javascript - HTML/jQuery 仅在刷新时更改 URL 的一部分

标签 javascript jquery html

我在 jQuery 中有一个按钮可以像这样重定向页面...

$('#changeLang').click(function() {
    document.location.href='/' + $('#languages').val();
})

它工作正常,但是当有人点击它时它会重定向到/foo,如果有人在更深的 URL 上......

/foo/bar/foobar

我希望它只更改“foo”部分,以便在单击时执行此操作...

/$('#languages').val()/bar/foobar

最佳答案

您可以使用 window.location.pathname,它会为您提供域之后的所有内容,将其拆分为一个数组,更改您需要的内容,然后通过连接将其粘合在一起。

$('#changeLang').click(function() {
    var url = window.location.pathname.split('/');
    url[1] = $('#languages').val();
    document.location.href = url.join('/');
}); 

https://jsbin.com/huqijezoxu/edit?html,js,output

关于javascript - HTML/jQuery 仅在刷新时更改 URL 的一部分,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34280862/

相关文章:

javascript - 简单模态 |首次访问时年龄验证 |关闭但没有 cookie

HTML 缩进和可读性

javascript - Extjs:使用父 div 调整大小调整面板

JavaScript - 创建可更改 JavaScript 变量的 HTML 下拉菜单

javascript - 如何在 Angular JS 中检索它定义的函数之外的 $scope 值

javascript - 什么是 "x && foo()"?

javascript - 如何使用 JavaScript 离线读取 JSON 文件?

jquery - BaseJQueryEventObject、JQueryEventObject 等已弃用。我们用什么来代替它?

JavaScript:测试原语的相等性

javascript - Html & JS 在点击时将图像旋转 90 度