有时,如果我们需要检查用户是否修改了表单的内容,我们可以使用以下技巧。如果我们修改表单的内容,我们将返回true。如果我们不修改表单的内容,我们将返回false:
复制代码代码如下所示:
功能formisdirty(形式){
对于(var i = 0;i < form.elements.length;i++){
var元素=表单。元素{ };
变量类型= element.type;
如果(类型= =复选框| |型=无线电){
如果(element.checked!=元。defaultchecked){
返回true;
}
}
如果(类型= =隐藏式的密码| | | | = =类型= =文本| |型= = textarea){
如果(element.value!=元。默认值){
返回true;
}
}
如果(类型= =选择一个| | type=选择多){
对于(var j = 0;J < element.options.length;j++){
如果(元素,选项,{ },选择!=元。选项defaultselected){ } { J。
返回true;
}
}
}
}
返回false;
}
window.onbeforeunload =功能(e){
E = e window.event | |;
如果(formisdirty(文件形式{形式))){
如果(e){
e.returnvalue =你有未保存的更改。;
}
返回你有未保存的更改。;
}
};