我想单击按钮来更改用户状态,所以我要做的就是检测当前状态并根据需要进行更改。
但是在这种情况下,更改后端的状态,但是要显示状态,页面需要刷新,因为刷新时它会检查当前状态并显示。因此,我正在使用“window.location.reload”属性在页面上显示最新状态。
IE中所有的东西都工作正常。但是对于Firefox和Chrome,状态不会改变。我认为“window.location.reload”不起作用,因为当我只注释此行并尝试单击按钮并手动刷新页面时,它会显示更改状态。
您能否建议在Firefox和Chrome浏览器中使用该工具应该做什么?
当我用Google搜索时,如果在“setTimeout()”中输入它,我发现它可以在Firefox和Chrome中运行。我尝试过,但即使那样对我也不起作用。
<script>
$(document.body).on('click', '#activate', function () {
var pkgVersion = $(this).attr('data-version');
alert("@Url.Action("SetActivePackage", "Deployment")", { version: pkgVersion });
$.get("@Url.Action("SetActivePackage", "Deployment")", { version: pkgVersion }).done(function () {
});
setTimeout(function () { window.location.reload(data); }, 0);
});
</script>
请提出建议!
最佳答案
我还有两个选择供您选择:
history.go(0);
和:
window.location.href = window.location.href;
我尚未在Firefox和Chrome上对其进行测试,但它可能会帮助您更快。明天我将进行测试并更新答案(如果这不起作用)。
关于javascript - window.location.reload对Firefox和Chrome不起作用,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/18967532/