Javascript URL的lastIndexOf

Javascript URL的lastIndexOf,javascript,jquery,Javascript,Jquery,因此,我有以下脚本: <script> var id = window.location.href var buttonText = id.substr(id.lastIndexOf('/') + 1); jQuery("#first_button").html(buttonText) </script> var id=window.location.href var buttonext=id.substr(id.lastIndexOf('/')+1

因此,我有以下脚本:

<script>
   var id = window.location.href
   var buttonText = id.substr(id.lastIndexOf('/') + 1);
   jQuery("#first_button").html(buttonText)
</script>

var id=window.location.href
var buttonext=id.substr(id.lastIndexOf('/')+1);
jQuery(“第一个按钮”).html(buttonText)
因此,它所做的是将“
id=first_button
”按钮的文本替换为最后一个“
/
”按钮旁边的url

以下是我网站的URL设置:
mysite.com/first/second/

问题是,我的所有页面都以“
/
”(例如.com/something/something/something/)结尾

因此,nothing显示为在最后一个“
/
之后没有任何内容”

这就是我想要达到的基本目标

我有两个按钮:
第一个按钮
第二个按钮

任何页面的URl都将遵循相同的格式:`.com/first/second/

我试图用
/first/
URL替换
第一个按钮
,用
/second/
URL替换
第二个按钮
,如下所示

总之,我现在拥有的代码仅通过URL更改最后一个“
/
”之后的第一个按钮文本

我希望第一个和第二个“
/
”(例如“
.com/first/
”)之间的URL替换第一个按钮标题

我希望第二个和第三个“
/
”(例如“
.com/first/second/
”)之间的URL替换第二个按钮

在jQuery中,如何定位特定的URL部分


谢谢大家

您似乎想要这样:

var parts = window.location.href.split('/').filter(Boolean);
jQuery("#second_button").html(parts.pop());
jQuery("#first_button").html(parts.pop());
split('/')
从href生成一个数组,
pop()
获取该数组的最后一个元素

也可以使用正则表达式执行此操作:

var m = window.location.href.match(/([^\/]+)\/([^\/]+)\/?$/);
if (m) {
    jQuery("#first_button").html(m[1]);
    jQuery("#second_button").html(m[2]);
}
如果您不想要href的最后两个部分,而想要路径的前两个部分,请按如下方式操作:

var m = window.location.pathname.match(/([^\/]+)\/([^\/]+)/);
if (m) {
    jQuery("#first_button").html(m[1]);
    jQuery("#second_button").html(m[2]);
}

这是否可以针对href的特定部分?例如第一部分的第一个按钮和第二部分的第二个按钮?(顺便说一句,谢谢你提供的信息)\@steveKim你是说你不想要最后的部分而是第一部分?我不明白“.html(parts.pop());”以及它如何将第二部分替换为第二部分,将第一部分替换为第一部分。但是你给了我足够多的钱来支持我!:)我会尽我所能,让它发挥作用,让你知道!=)谢谢DenysThank。您的上一个脚本非常有效!=)今天我学到了一些新东西!非常感谢。