Javascript jquery查找并替换url中的最后一个参数
嗨,首先,我已经环顾四周了,但是没有什么能满足我的愿望,所以我想问是否有人能帮我解决这个问题 我有一个URL“/视图/相册/4/照片/1” 我想删除最后一个参数,并用一些东西替换它。 我想做的是找到最后一个“/”并删除它后面的数字,然后用一个新值替换它 使用php很容易,但我不知道如何在jquery中使用它,因为我刚刚开始学习它。因此,我非常感谢任何能提供帮助的人。:) 顺便说一下,这是我获取url的代码: action=$(form.attr('action');//“/view/album/4/photo/1”Javascript jquery查找并替换url中的最后一个参数,javascript,jquery,Javascript,Jquery,嗨,首先,我已经环顾四周了,但是没有什么能满足我的愿望,所以我想问是否有人能帮我解决这个问题 我有一个URL“/视图/相册/4/照片/1” 我想删除最后一个参数,并用一些东西替换它。 我想做的是找到最后一个“/”并删除它后面的数字,然后用一个新值替换它 使用php很容易,但我不知道如何在jquery中使用它,因为我刚刚开始学习它。因此,我非常感谢任何能提供帮助的人。:) 顺便说一下,这是我获取url的代码: action=$(form.attr('action');//“/view/album/
我不知道如何使用变量来更改最后一个参数的值,简单易懂:regexp
var paths = location.pathname.split('/');
paths[ paths.length-1 ] = 'foo'; // new value
location.pathname = paths.join('/');
action = (action.match(/(.*)\d+$/) == null) ? action : (action.match(/(.*)\d+$/)[1]+"2");
给予
试试这个:)
或
API:
顺便说一句,我知道关于:)
代码
url = "/view/album/4/photo/1"
var value = url.substring(url.lastIndexOf('/') + 1);
alert(value);
url = url.replace(value, 'hulk')
alert("new url => " + url);
另一种方式
var str = '/view/album/4/photo/1';
var i = str.lastIndexOf('/');
if (i != -1) {
str = str.substr(0, i) + "/new stuff";
}
alert(str);
如果只想替换最后一个字符,可以使用
slice
方法
$('form').attr('action', function(i, a){
a.slice(0, -1) + 'number'
})
无聊的!我看到了一个陷阱。如果
url=“/view/album/4/photo/4”
<代码>:)太棒了!非常感谢。这是非常有用的,还有一个演示。非常感谢:)@user949000没问题!很高兴它有帮助:)第一种方法在某些情况下会失败。另一条路就是要走的路!非常感谢你!这很有趣:)这太完美了。在减去正则表达式后效果很好
$('form').attr('action', function(i, a){
a.slice(0, -1) + 'number'
})