提示
//用于离开页面时验证是否有资料修改,如有修改则弹出提示确认框
(function () {
var E = YAHOO.util.Event;
var D = YAHOO.util.Dom;
var oldContent = '';
var newContent = '';
var contentReady = false;
var form = (D.getElementsByClassName("infoForm"))[0];
var getOldContent = function () {
oldContent = '';
for (var i = 0; i < form.length; i++) {
if (form.elements[i].type == 'hidden')
continue;
//默认提示文案修改时请修改以下文案
if (form.elements[i].value == "多条内容用空格或逗号分隔")
continue;
if (form.elements[i].type == 'radio') {
oldContent += form.elements[i].checked;
continue;
}
if (form.elements[i].type == 'checkbox') {
oldContent += form.elements[i].checked;
continue;
}
oldContent += form.elements[i].value;
}
contentReady = true;
}
var checkEdit = function (e) {
var newContent = '';
for (var i = 0; i < form.length; i++) {
if (form.elements[i].type == 'hidden')
continue;
if (form.elements[i].value == "多条内容用空格或逗号分隔")
continue;
if (form.elements[i].type == 'radio') {
newContent += form.elements[i].checked;
continue;
}
if (form.elements[i].type == 'checkbox') {
newContent += form.elements[i].checked;
continue;
}
newContent += form.elements[i].value;
}
if (newContent != oldContent)
e.returnValue = '======================================\n' + '你修改的资料还没有保存,确认要离开吗?\n' + '======================================';
}
E.onDOMReady(function () {
setTimeout(getOldContent, 1000);
});
E.addListener(window, 'beforeunload', function (e) {
if (contentReady == true)
checkEdit(e);
});
form.onsubmit = function () {
getOldContent();
};
})();