我想在点击按钮时更改用户状态,所以我所做的就是检测当前状态并根据需要进行更改.
但在这种情况下,更改后端的状态,但要显示页面需要刷新的状态,如刷新时检查当前状态并显示.所以我使用“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上测试它,但它可能会帮助你更快.明天我会做测试并更新答案,如果这不起作用.