我在我的网络表单应用程序(C#)的后端使用静态计数器限制某些弹出窗口的数量。我只希望一次打开一个窗口。后端计数器工作正常,但是当用户关闭子窗口时,我想重置后端的计数器。为此,我使用AJAX和JS(不能使用JQuery),并且我调用AJAX在onUnload事件的后端进行POST。
我使用的是IE 11。
我想从我的JavaScript调用后端方法。
public void DecreaseItem1()
{
int? inspID = convert.ToInt(Request.QueryString["inspid"]);
int? inpID_static = InspectionList.GetWindowInspID();
string path = HttpContext.Current.Request.Url.AbsolutePath;
if (path.Contains("ReadOnlyInspection"))
{
if (inspID != inpID_static)
{
InspectionList.DecreaseCounter();
}
else
{
InspectionList.DecreaseCounter();
InspectionList.SetGetWindowInspID(null);
}
}
从我的前端我调用onUnload DecreaseItem()JavaScript函数。
身体标签
<body onUnload="DecreaseItem()" >
JavaScript函数:
<script type="text/javascript">
function DecreaseItem() {
var win_loc = "ReadOnlyInspection.aspx/DecreaseItem1";
var xhttp = new XMLHttpRequest();
xhttp.open("POST", win_loc, true);
xhttp.send();
}
</script>
[问题]计数器永远不会减少。非常感谢任何帮助或建议。