javascript - 为什么我无法向 window.location 添加参数?

标签 javascript google-chrome

使用 Javascript,我尝试重新加载页面并在执行此操作之前添加参数。我添加了警报来调试参数未传递到服务器的原因:

    alert('before: ' + window.location.href);
    window.location.href = window.location.href + "?advanced_expand=true";
    alert('after: ' + window.location.href);
    window.location.reload();

让我困惑的是第一个警报是:

before: http://localhost:3000/orgconf/quick_org_benefit/edit/784

第二个是:

after: http://localhost:3000/orgconf/quick_org_benefit/edit/784

没有添加参数...会产生什么?

最佳答案

之后执行window.location.reload()是没有意义的,因为设置window.location.href会更改页面。 同样,window.location.href 在页面更改之前实际上不会更改。这就是您没有看到 URL 更改的原因。

如果页面正在重新加载并且页面仍然没有更改,请确保您的网址重写不会删除 ? 之后的 GET 参数。

关于javascript - 为什么我无法向 window.location 添加参数?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28723282/

相关文章:

css - 无法在 Chrome 扩展页面中设置按钮样式

Javascript mousup 事件触发得很晚

javascript - 在javascript中深度复制嵌套对象数组

javascript - 转到定义在 visual studio 2015 中不起作用(特别是在 Javascript 用户定义函数中)

javascript - 如何在semantic-ui中制作两行顶部固定菜单

node.js - 在 WebStorm 和 npm 中调试

css - 为什么我不能对后代元素使用 Action 选择器

html - Chrome 更新会影响与文本缩进相关的 CSS 文本溢出

javascript - 浏览器可能不使用缓存

javascript - 如何将 window.setTimeout 分配给动态变量?