Javascript dropDownList问题上的自动回邮
我有一段代码要与用户确认是否可以离开页面而不保存:Javascript dropDownList问题上的自动回邮,javascript,asp.net,Javascript,Asp.net,我有一段代码要与用户确认是否可以离开页面而不保存: <script language="JavaScript"> window.onbeforeunload = !isPostBack && confirmExit; function isPostBack() { return <%= Page.IsPostBack ? "true":"false" %> } function confirmExit() { return "Som
<script language="JavaScript">
window.onbeforeunload = !isPostBack && confirmExit;
function isPostBack() {
return <%= Page.IsPostBack ? "true":"false" %>
}
function confirmExit() {
return "Some lame question for user. :)";
}
</script>
window.onbeforeunload=!isPostBack和confirmExit;
函数isPostBack(){
返回
}
函数confirmExit(){
返回“用户的一些蹩脚问题:”;
}
有dropDownLists的页面有问题,我必须将AutoPostBack设置为true。
AutoPostBack=true每次都会导致恼人的弹出窗口。
我已经想出了如何检查回发(谢谢谷歌),但现在我被卡住了
不应该有错误,我不知道什么时候会用到java脚本。我是一个尝试学习新东西的糟糕的桌面程序员。
窗口。onbeforeuload
应该是一个函数,而不是bool值。您可能打算这样做,或类似:
if(<%= Page.IsPostBack ? "true":"false" %>)
{
window.onbeforeunload = function()
{
return "Some lame question for user. :)";
};
}
if()
{
window.onbeforeunload=函数()
{
返回“用户的一些蹩脚问题:”;
};
}
顺便说一句,避免重新发布警告的另一种方法是post redirect get模式(从服务器上的事件处理程序中重定向到您发布到的同一页面)。onbeforeunload应该存储函数,而不是布尔值,因为它是回调 你可以这样做:
window.onbeforeunload = function(){
if(!isPostBack && confirmExit) {
//leave page
}
}
不确定到底是什么问题,你是什么意思?confirmExit()方法不应该执行类似的操作:
returnconfirm('Question')代码>他的意思是关于重新发布以前发布的表单的警告。你不能仅仅依靠检查页面是否已“PostBack:ed”。一旦发生回发,IsPostBack将为true,但用户仍可以尝试离开该页转到另一页。您必须检查页面卸载的原因,即当用户导致回发时,使用客户端代码设置客户端变量(导致回发的控件上的javascript onclick事件处理程序)。