jquery - 从参数构建漂亮的 url
jQuery 有一个 param() 函数,我正在寻找类似的功能。我需要在我的对象中返回一个 url。例如:
url: function() {
return this.baseUrl + '?' + $.param({page: this.page, perPage: this.perPage});
},
这将返回 example.com/?page=1&perPage=5
或类似形式的 url。如何形成网址 example.com/page/1/perpage/5
?
jQuery has a param()
function, I'm looking for similar functionality. I need to return a url in my object. For example:
url: function() {
return this.baseUrl + '?' + $.param({page: this.page, perPage: this.perPage});
},
this will return a url in the form of example.com/?page=1&perPage=5
or something similar. How can I form the url example.com/page/1/perpage/5
?
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(3)
您可以创建自己的函数:
唯一的问题是无法保证参数的顺序(这对于查询字符串来说不是问题,但对于此类 URL 可能是问题)。您可能还想添加一个检查
base
是否已以斜杠结尾。You can create your own function:
The only problem is that the order of the parameters is not guaranteed (which is not a problem for query strings but might be for this kind of URLs). You might also want to add a check if
base
already ends with a slash or not.只是一个想法:)
Just an idea :)
把这个放在最后:
像这样:
编辑以指出菲利克斯·克林对 ? 的担忧:
这只会删除第一个?保留作为查询字符串一部分的任何其他 ? 完整。使用起来非常安全。
tack this on the end:
like so:
edited to point out in re to Felix Kling's concern about ?'s:
This will only remove the FIRST ? leaving any other ?'s that are part of the query string INTACT. Perfectly safe to use.