Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/382.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
如何简化此Javascript子字符串切片搜索函数_Javascript_Html_Django_Url - Fatal编程技术网

如何简化此Javascript子字符串切片搜索函数

如何简化此Javascript子字符串切片搜索函数,javascript,html,django,url,Javascript,Html,Django,Url,我在一个HREF链接的HTML页面中有这样一个URL: <a id="view_server_link" href="{% url 'view_server' serverid=1 %}"> 我正试图分离出这一点: http://site.domain.com/page/ 在JS变量中,以便以后可以动态修改HREF URL。所有这些都在起作用,但我的URL缩减/隔离功能似乎有些臃肿。我希望这里有人能找到一个简化的方法。再说一次,这对我很有用 注意:我不想假设/1/部分总是数字1

我在一个HREF链接的HTML页面中有这样一个URL:

<a id="view_server_link" href="{% url 'view_server' serverid=1 %}">
我正试图分离出这一点:

http://site.domain.com/page/
在JS变量中,以便以后可以动态修改HREF URL。所有这些都在起作用,但我的URL缩减/隔离功能似乎有些臃肿。我希望这里有人能找到一个简化的方法。再说一次,这对我很有用

注意:我不想假设/1/部分总是数字1

var $view_server_href = $('#view_server_link').attr('href').substring(0, $('#view_server_link').attr('href').slice(0, -1).search(/\/\w*$/) + 1);

听起来您只是想将
/1/
更改为结尾处的
/
(其中
1
可以是任何数字序列)。如果是这样,一个简单的
.replace(/\/\d+\/$/,'/')
应该可以:

var$view\u server\u href=$(“#view\u server\u link”).attr('href')。替换(/\/\d+\/$/,'/');
log($view\u server\u href)

可以尝试:

url=url.split("/");
url.pop();//remove last elem
url=url.join("/");
简短(或多或少:/(更准确:模糊):


这是离题的,但我建议使用
.prop('href'))
。它的内容更可靠。它将始终包含一个绝对URI,而属性可以包含几乎所有内容。注意。我刚刚阅读了它并更新了我的代码。谢谢!这个答案非常有趣。谢谢!请通过将tjs解决方案标记为答案来结束此问题;)非常感谢。完美的非常感谢。
url=url.split("/");
url.pop();//remove last elem
url=url.join("/");
url=url.split("/").map((e,i,arr)=>i==arr.length-1?undefined:e).join("/");