整个周末我都在为不想要的回发而苦苦挣扎。
我正在处理的弹出窗口有一个按钮,它基本上会触发一些存储过程,然后关闭弹出窗口。我想要实现的是当人们点击右上角的 X 关闭按钮时获得相同的结果。所以,X 按钮 = myCloseButton。
为此,我已经这样做了。
阿贾克斯。
$(window).unload(function(){
var dataToSend = { MethodName: 'UpdateR' };
var options =
{
data: dataToSend,
dataType: 'JSON',
type: 'POST',
};
$.ajax(options);
});
.ASPX.CS
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{ #region Ajax methods
if (Request.Form["MethodName"] == "UpdateR")
{
UpdateRegister();
return;
}
#endregion
}
}
然后UpdateRegister()
在人们离开页面后执行我想要执行的代码。
因此,当人们在弹出页面中点击另一个(无论)控件时,问题就来了。页面进入(!IsPostBack)
AJAX方法。这是可以理解的,因为我在说.unload
做这个做那个。(我已经尝试过$(window).bind('beforeunload', function()
,但它不能达到预期的目的)
关于“当它是像 X 按钮或我的控件以及页面上的任何其他控件这样的关闭事件时,我如何告诉页面有所不同?”的任何想法?将不胜感激。
谢谢。
编辑。这不是关于在离开之前对表单进行序列化和比较的事情。不,它是关于登录和东西的,所以即使人们打开弹出窗口并立即关闭它,我也需要得到它。