javascript - 更改硬编码的 JS 变量值

标签 javascript jquery html variables

我正在使用第 3 方应用程序,他们有一个 JS 变量硬编码到 HTML 中,我需要使用 Javascript 或 jQuery 更改/更新,两者都可以使用。

第 3 方应用程序将变量硬编码到页面中:

<script type="text/javascript" charset="utf-8">
var order_poNumber = "";
</script>

当用户从下拉列表(我的下拉列表,而不是第三方)中选择一个值时,它会更新:

<script type="text/javascript" charset="utf-8">
var order_poNumber = "32380080-64060";
</script>

但问题是该值由于某种原因而保持不变。如果您转到另一个页面并返回(不使用后退按钮,而是转到其他页面,然后单击链接返回到发生此问题的订单页面),该值仍然是设置为 32380080-64060 但我需要它像原来一样为空白。

我已经尝试过:

function resetPO(){
    order_poNumber = "";
}
window.onload = resetPO();

还有其他一些变体,但它不起作用。

顺便说一句,我必须从外部 JS 文件执行 JS。

有什么想法吗?

我正在寻找一种方法来覆盖在 HTML 中硬编码的 JS 脚本 block 中变量 order_poNumber 中存储的值。理想情况下,我希望某种迟到甚至延迟的 JS 进入并在页面加载后覆盖该值。 一旦从下拉列表中选择该数字(AJAX、ActiveX、 JS、jQuery 以及第三方应用程序和我自己的代码和函数的混合)需要做很多工作才能正常工作,所以我不想再搞乱所有这些了。

最佳答案

浏览器后退按钮的工作方式与初始页面加载不同。您可以使用 jquery-address 为页面更改(包括来自导航箭头的更改)添加监听器:

$.address.change(function(e) {
    resetPO();
});

http://github.com/asual/jquery-address

关于javascript - 更改硬编码的 JS 变量值,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/26679607/

相关文章:

javascript - 在 Javascript/HTML 中使用 Web.config 应用程序数据

CSS - 将 "normal"div 定位在使用 "position: absolute"的 div 下方?

javascript - ramda js 与 find、pick 和 trim 值组合

jquery - 删除下拉菜单之间的间距

asp.net - 从分层 sql 数据返回无序列表

jquery - WordPress 单页样式菜单滚动

javascript - 从 ajax 接收结果后打开一个弹出框

javascript - HTML 网格在我的网页右侧创建了烦人的边距

javascript - 如何在没有 JavaScript 的情况下分离键盘 Tab 键旋转组?

javascript - 通过 id 匹配集合项