Javascript 如果表单已填写,则在离开页面时确认警报
我需要帮助。我想显示确认警报,若用户离开页面,若表单已填写或表单上至少有一些字段已填写。我有以下代码在Chrome中运行,但在Firefox中不起作用。即使表单字段为空,也会显示警报 下面是我的代码Javascript 如果表单已填写,则在离开页面时确认警报,javascript,jquery,html,asp.net,Javascript,Jquery,Html,Asp.net,我需要帮助。我想显示确认警报,若用户离开页面,若表单已填写或表单上至少有一些字段已填写。我有以下代码在Chrome中运行,但在Firefox中不起作用。即使表单字段为空,也会显示警报 下面是我的代码 $(window).bind('beforeunload', function () { return ''; //Are you sure you want to leave?'; }); 所以我需要帮助,这样我可以在Firefox和所有其他浏览器中在表
$(window).bind('beforeunload', function () {
return ''; //Are you sure you want to leave?';
});
所以我需要帮助,这样我可以在Firefox和所有其他浏览器中在表单完全或部分填充时生成警报,但在表单为空时不生成任何警报。我试着利用viewstate。检查viewstate值是否不同,然后生成警报,但它并不像我预期的那样工作
我试过的另一段代码是
window.onbeforeunload = function (e) {
var message = "Your confirmation message goes here.",
e = e || window.event;
// For IE and Firefox
if (e) {
e.returnValue = message;
}
// For Safari
return message;
})
但上面的代码不检查表单是否已填写。当表单部分或全部填写时,我需要提醒我没有对此进行测试,但这里有一个快速测试:
$(window).bind('beforeunload', function () {
$('input').each(function () {
if(this.value.length > 0){
alert('you entered data');
return false;
}
});
});
这应该行得通,试一试。它也会处理空的空间
$( window ).unload(function() {
if(!$.trim(this.value).length) {
alert('Fill Data')
}
});
@凯坦:我又加了一些代码。这不起作用。但是代码看起来不错,但不确定为什么不工作听起来像是连接问题,而不是JS错误。这对meAlso来说很好,而不是警报,我会使用确认对话框,这样用户就可以取消。所以你去了小提琴,在字段中添加了字符,点击按钮,但没有收到警报?如果这是真的,我不知道还能为你做些什么,先生。实际上我想在卸载前使用它,它在单击时起作用,但在卸载前事件中不起作用