如何使用 mooTools 更改查询字符串的值?
给定一个包含带有查询字符串参数的绝对 URL 的字符串,使用 JavaScript 和/或 MooTools 替换参数值的最简单方法是什么?
例如
// Change this
'/foo/bar?frob=123456789'
// Into this
'/foo/bar?frob=abcdefg'
编辑
URL 不是当前窗口的位置
。它是一个包含字符串的变量。我只是想操纵这个字符串。
如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。
绑定邮箱获取回复消息
由于您还没有绑定你的真实邮箱,如果其他用户或者作者回复了您的评论,将不能在第一时间通知您!
发布评论
评论(4)
除了您所做的之外,这可能会更好,因为它将扩展
String
并消除对 URI 类的依赖...http://jsfiddle.net/dimitar/fjj6W/
Further to what you did, this may be better as it will extend
String
and it removes dependency on URI class...http://jsfiddle.net/dimitar/fjj6W/
很抱歉撞到了旧帖子,但我认为它已经在 mootools 中了。无需自己编写:-) http://mootools.net/docs/ more/Types/URI#URI:setData
或者,如果您使用的是非常旧版本的 mootools,请查看此处:http://pilon.nl/mootools/2009/02/05/extra-browsersextras/
Sorry for bumping an old post but I think it's already in mootools. No need to write it yourself :-) http://mootools.net/docs/more/Types/URI#URI:setData
Or take a look here if your on a very old version of mootools: http://pilon.nl/mootools/2009/02/05/extra-browsersextras/
如果您想在不重新加载页面的情况下执行此操作,则没有办法(这是网络浏览器安全模型的一部分)。
如果您不介意重新加载页面,请考虑:
无需重新加载的替代方法是使用 location.hash,即将
url 更改为 http://example.com/foo/bar?frob=123456789#myhash
这是Hash bang url
If You want to do this without reloading the page, there is no way (this is part of the web browser security model).
If You don't mind reloading the page, consider:
An alternative without reloading is using location.hash, i.e.
to change url to http://example.com/foo/bar?frob=123456789#myhash
This is the basis of the Hash bang urls
这是我想出的解决方案。这依赖于MooTools。
这是特定于我的用法的,但它可能会作为将来其他人的起点。
This is the solution I came up with. This is dependent on MooTools.
This is specific to my usage but it might serve as a starting point for others in the future.