JavaScript判断表单元素value值是否被修改过
本章节分享一段代码实例,它实现了判断表单元素的value值是否被修改的功能。
具有一定实用性,比如当表单的内容被修改的时候,这时不小心关闭了页面,给出一个提示,询问用户是否保存表单的修改,代码实例:
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<meta name="author" content="/" />
<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="实例3"><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;
}
}如果是复选框或者单选按钮,那就判断当前的选中情况是否和默认选中是否一致,下面的判断原理也是如此。
相关推荐
-
javascript删除指定索引的数组代码实例
本章节分享一段代码实例,它实现能够删除数组指定索引的元素的效果。代码实例:function RmovVlByIndx(rr,indx){ rr.slic(indx,1);}vr
-
获取文档最后修改时间代码实例
本章节分享一段代码实例,它实现获取当前文档最后修改时间的效果。代码实例如下
-
select下拉菜单多级级联效果代码实例
使用slct下拉菜单经常制作多级级联效果,本章节就以一个省市地区三级级联效果做一下演示。代码实例如下:
-
javascript在数组开头添加一个元素
本章节分享一段代码实例,它实现了在数组的开头添加一个元素。代码实例如下:vr rr=[1,2,3,4];rr.slic(0,0,0);consol.log(rr)上面的代码成功在数字的开
-
javascript删除数组指定值代码实例
本章节分享一段代码实例,它实现了能够删除数组中具有指定值的元素。代码实例如下:rry.rototy.rmovByVlu = function(vl) { for(vr i=0;