根据 URL 参数的变化,我在 html 中的值也会发生变化。所以基本上我将这些值传递给一个 json 文件。由于页面因帖子而刷新,我的值被删除。我尝试了事件阻止默认值,但它对我不起作用。
var carryOver ={"Jan":"","Feb":""};
var parameters = getParameterByName('month')//gets the current URL parameter
if(parameters == '01-2017'){
$('#monthQuota').html(janQuota);
carryOver["Jan"] = 300;
}
else if(parameters == '02-2017'){
carryOver["Feb"] = 400;
}
$(function() {
$('parameters').on('change', function (e) {
e.preventDefault();
$.ajax({
type: "POST",
url: "utilization-2017-test.php",
data: {
json: JSON.stringify(monthBalances)
}
})
})
})
最佳答案
先生,javascript或jquery可以检测到#(hash)更改,但不能检测到参数更改。如果您单击链接并且#tag发生更改,则脚本或事件将检测到这一点,并且页面不会重新加载,而是更改参数您将在浏览器 URL 中查找一个条目,因此您的值会刷新。
因此,请做一件事,保留一个文本框并输入值,然后从文本框中获取值并进行服务调用,而不是从 URL 获取输入
关于javascript - 如何在不刷新页面的情况下通过ajax发布URL参数更改,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42129576/