JavaScript判断表单元素value值是否被修改过
分类:实例代码
本章节分享一段代码实例,它实现了判断表单元素的value值是否被修改的功能。
具有一定实用性,比如当表单的内容被修改的时候,这时不小心关闭了页面,给出一个提示,询问用户是否保存表单的修改,代码实例如下:
<!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name="author" content="http://www.pipipi.net/" /> <title>前端教程网</title> <script> function formIsDirty(form) { for (var index = 0; index < form.elements.length; index++) { var element = form.elements[index]; var type = element.type; if (type == "checkbox" || type == "radio") { if (element.checked != element.defaultChecked) { return true; } } else if (type == "hidden" || type == "password" || type == "text" || type == "textarea") { if (element.value != element.defaultValue) { return true; } } else if (type == "select-one" || type == "select-multiple") { for (var j = 0; j < element.options.length; j++) { if (element.options[j].selected != element.options[j].defaultSelected) { return true; } } } } return false; } window.onload=function(){ var obt=document.getElementById("bt"); var odiv=document.getElementById("show"); obt.onclick=function(){ odiv.innerHTML=formIsDirty(document.myform) } } </script> </head> <body> <div id="show"></div> <form name="myform"> <input type="text" name="username" value="pipipi.net"><br> <input type="text" name="address" value="青岛市南区"><br> <select name="kecheng"> <option value="css教程" selected="">css教程</option> <option value="div教程">div教程</option> </select> </form> <input type="button" id="bt" value="查看效果"/> </body> </html>
上面的代码实现了判断功能,下面就介绍一下它的实现过程。
代码注释:
(1).function formIsDirty(form) {},参数是一个表单对象,如果改动则返回true,否则返回false。
(2).for (var index = 0; index < form.elements.length; index++) {},遍历form下每一个表单元素。
(3).var element = form.elements[index],获取指定索引的表单元素。
(4).var type = element.type,获取表单元素的类型。
(5).if (type == "checkbox" || type == "radio") {
if (element.checked != element.defaultChecked) {
return true;
}
}如果是复选框或者单选按钮,那就判断当前的选中情况是否和默认选中是否一致,下面的判断原理也是如此。
一线大厂高级前端编写,前端初中阶面试题,帮助初学者应聘,需要联系微信:javadudu