我们有时候需要这样的一个功能,即我们从数据库读取了一些默认值到表单,此时,我们要对表单进行填写,我们希望我们填写过后的内容与初始的内容进行比较,当我们重新填写的内容与初试内容(各个表单的内容都要进行比较)不同时,我们要实现某种功能。
以下是今天一个朋友找我要一个demo,类似的,希望当表单的内容与初始值内容不相同时,实现按钮的disableed的切换效果。上代码:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>unequalcheck</title>
<script type="text/javascript">
var arr = [];
function getValue() {
var form = document.getElementById('form');
var inputs = form.getElementsByTagName('input');
var selected = form.getElementsByTagName('select');
var un = inputs.item(0).value;
var pw = inputs.item(1).value;
var sex = selected.item(0).options[selected.item(0).selectedIndex].value;
return [un , pw , sex];
}
function onloadFun() {
arr = getValue();
dis();
}
function dis() {
var st = document.getElementById('submit');
st.disabled = true;
//alert(1);
}
function en() {
var st = document.getElementById('submit');
st.disabled = false;
//alert(2);
}
function change() {
var thisarr = getValue();
var flag = compare(thisarr , arr);
if(flag) {
dis();
}
else {
en();
}
}
function compare(a , b) {
var flag = true;
for(var i = 0; i < a.length; i++) {
if(a[i] !== b[i]) {
flag = false;
}
}
return flag;
}
window.onload = onloadFun;
</script>
</head>
<body>
<form action="javascript:void(0);" method="get" id="form">
UserName : <input type="text" name="un" value="un" onchange="change();" /><br />
PassWord : <input type="password" name="pw" value="pw" onchange="change();" /><br />
Sex : <select name="sex" onchange="change();">
<option value="Boy">Boy</option>
<option value="Girl">Girl</option>
</select><br />
<input type="submit" value="Submit" id="submit" /> <input type="reset" value="Reset" onclick="dis();" />
</form>
</body>
</html>
没有添加注释,不过也算是比较清晰,希望大家能够看懂。
具体的效果,诸位可以将代码在本地运行,就可知道。
不足之处还望予以指正,在此拜谢!
分享到:
相关推荐
1、我们可以参照快速启动那篇,创建一个名为forms的新项目,也可以使用之前的项目进行修改; 2、创建Person类; 3、创建控制此表单的组件; 4、创建具有初始表单布局的模板; 5、使用ngModel双向数据绑定语法把数据...
现在要通过js对表格进行动态的增删改查(只是内存操作即可): 首先,加载页面时用js加载3条初始化记录; 有一个增加记录的按钮,点击后弹出一个div层提供输入,要求各字段必须符合输入格式且不能为空: 用户名...
15.7.2 更改元素的内容 15.7.3 使用DOM创建新元素 15.7.4 在节点前插入 15.7.5 为节点创建属性 15.7.6 DOM回顾:创建博客 15.7.7 使用DOM创建表格 15.7.8 复制节点 15.7.9 ...
1.8 JavaScript的实现基础 1.8.1 ECMAScript 1.8.2 DOM 1.8.3 BOM 1.9 客户端与服务器端脚本 1.10 JavaScript与JScript、 VBScript 1.11 JavaScript与Java、Java applet 1.12 JavaScript的未来如何 1.13 本章小结 第...
74.JS中状态栏显示内容:window.status="内容" 75.JS中的top指的是框架集中最顶层的框架 76.JS中关闭当前的窗口:window.close(); 77.JS中提出是否确认的框:if(confirm("Are you sure?")){alert("ok");}else{alert(...
《JavaScript权威指南(第6版)》主要讲述的内容涵盖JavaScript语言本身,以及Web浏览器所实现的JavaScript API。本书第6版涵盖了HTML5和ECMAScript 5,很多章节完全重写,增加了当今Web开发的最佳实践的内容,新增...
jQuery表单省市区城市三级联动,代码中:initComplexArea('seachprov', 'seachcity', 'seachdistrict', area_... 51代表四川,如果要修改初始值可以在AreaData_min.js 中找对应地区的数字如:area_array[51]="四川省";
1.8 JavaScript的实现基础 1.8.1 ECMAScript 1.8.2 DOM 1.8.3 BOM 1.9 客户端与服务器端脚本 1.10 JavaScript与JScript、 VBScript 1.11 JavaScript与Java、Java applet 1.12 JavaScript的未来如何 1.13 本章小结 第...
《JavaScript权威指南(第6版)》主要讲述的内容涵盖JavaScript语言本身,以及Web浏览器所实现的JavaScript API。本书第6版涵盖了HTML5和ECMAScript 5,很多章节完全重写,增加了当今Web开发的最佳实践的内容,新增...
动态修改SWFUpload初始化设置中的post_params属性,其中所有的值都将被覆盖。 - 参数 param_object:一个simple JavaScript object,所有的name/value都必须是字符串,例如(this.setPostParams({ "Mari": name...
《JavaScript权威指南(第6版)》要讲述的内容涵盖JavaScript语言本身,以及web浏览器所实现的JavaScript API。本书第6版涵盖了 html5 和 ecmascript 5,很多章节完全重写,增加了当今 web 开发的最佳实践的内容,新增...
全新“网站模板与网站程序完全分离”的概念,具有强大的标签加样式的个性化组合,自定义标签、自定义表单、JS管理加JS模型(自定义JS,系统JS)的灵活应用,支持不同频道、栏目、内容页、专题等应用不同的模板,随时...
检查表单的元素是否真的从初始值改变了。 ##入门 包括 jquery.formChange.js 文件,然后将 formChange 应用到任何表单。 $ ( 'form' ) . formChange ( { hasChangedClass : 'has-changed' } ) ; $ ( 'form' )...
14.5 索引与唯一值的介绍 229 14.6 数据的操作 230 14.6.1 表的修改 230 14.6.2 表的删除 231 14.6.3 数据的查询 231 14.6.4 数据的插入 236 14.6.5 数据的更新 238 14.6.6 数据的删除 239 14.7 小结 239 第15章 ...
#jquery-fillform 自动填充表单,基于输入类型 ##入门 1. 在您的网站上包含 js。 < script src =" js/jquery.... 在更改每个值之前onChange 结束 onEnd 自动提交 填写后onEnd自动提交表单 ##许可证麻省理工学院
redux-inputs与redux一起使用,以验证和存储输入和表单中的值。 特征 声明式验证 声明式解析 声明式格式 异步验证 按输入验证 跨领域验证 定制输入组件 程序化价值收集 程序值初始化 程序化价值修改 程序输入复位 ...
《JavaScript权威指南(第6版)》要讲述的内容涵盖JavaScript语言本身,以及web浏览器所实现的JavaScript API。本书第6版涵盖了 html5 和 ecmascript 5,很多章节完全重写,增加了当今 web 开发的最佳实践的内容,新增...
Javascript小技巧一箩筐 事件源对象 event.srcElement.tagName event.srcElement.type 捕获释放 event.srcElement.setCapture(); event.srcElement.releaseCapture(); 事件按键 event.keyCode ...
《JavaScript权威指南(第6版)》要讲述的内容涵盖JavaScript语言本身,以及web浏览器所实现的JavaScript API。本书第6版涵盖了 html5 和 ecmascript 5,很多章节完全重写,增加了当今 web 开发的最佳实践的内容,新增...