<HTML>
<HEAD>
<SCRIPT>
function closeIt()
{
event.returnValue = "离开本页面,未保存的数据会丢失,离开前请确认数据已经保存。是否离开?";
}
</SCRIPT>
</HEAD>
<BODY onbeforeunload="closeIt()">
<a href="http://www.baidu.com">去百度</a></BODY>
</HTML>-------以上代码我会用,但我的问题是:
如果我点击"保存"按钮,也会弹出提醒狂,这样是不合理的.
请问我该如何实现这样的功能:
未保存就要离开页面的话,给予提示,
如何点击的是"保存",则不弹出,而是进行其他操作,例如保存.谢谢!
<HEAD>
<SCRIPT>
function closeIt()
{
event.returnValue = "离开本页面,未保存的数据会丢失,离开前请确认数据已经保存。是否离开?";
}
</SCRIPT>
</HEAD>
<BODY onbeforeunload="closeIt()">
<a href="http://www.baidu.com">去百度</a></BODY>
</HTML>-------以上代码我会用,但我的问题是:
如果我点击"保存"按钮,也会弹出提醒狂,这样是不合理的.
请问我该如何实现这样的功能:
未保存就要离开页面的话,给予提示,
如何点击的是"保存",则不弹出,而是进行其他操作,例如保存.谢谢!
<HEAD>
<SCRIPT>
function closeIt(e, f)
{
e = e || window.event;
if(f) return;
event.returnValue = "离开本页面,未保存的数据会丢失,离开前请确认数据已经保存。是否离开?";
}
</SCRIPT>
</HEAD>
<BODY onbeforeunload="closeIt(event, '')">
<a href="http://www.baidu.com">去百度</a>
<input type="button" value="save" onclick="closeIt(event,true)" />
</BODY>
</HTML>
document.body.setAttribute("onbeforeunload",null)
尤其是|| ,该符号是连接符还是逻辑或?
另外,<BODY onbeforeunload="closeIt(event, '')">
这句中的'' 可否改成false ? 有何区别?
谢谢!
|| 是或的意思,如果左边的值是false;则取右式的值,否则取左边。
<BODY onbeforeunload="closeIt(event, '')">里面的''应该是false;因为javascript里面'',undefined,0,null都认为是false,所以有点误导你了,应该是false;
<HEAD>
<SCRIPT>
var temp = false;
function closeIt()
{
if(temp) return;
else
event.returnValue = "离开本页面,未保存的数据会丢失,离开前请确认数据已经保存。是否离开?";
}
function btn(){
temp = true;
}
</SCRIPT>
</HEAD>
<BODY onbeforeunload="closeIt(event, '')">
<a href="http://www.baidu.com">去百度</a>
<input type="button" value="save" onclick="btn()" />
</BODY>
</HTML>