gpt4 book ai didi

javascript - URL 的 lastIndexOf

转载 作者:行者123 更新时间:2023-11-29 21:47:36 25 4
gpt4 key购买 nike

所以,我有以下脚本:

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

所以,它所做的是用最后一个“/”旁边的 url 替换“id=first_button”按钮的文本。

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

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

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

这就是我想要实现的本质。

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

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

我正在尝试将 first button 替换为 /first/ URL 并将 second button 替换为 /second/ 网址如下所示。

enter image description here

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

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

我想用第二个和第三个“/”之间的URL(比如“.com/first/second/”)替换第二个按钮。

在 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 的两个 last 部分,而是想要 path 的两个 first 部分,请这样做:

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

关于javascript - URL 的 lastIndexOf,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30543203/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com