[转]javascript 判断某页面上的表单数据是否改变过
2008-12-31 11:50
337 查看
本文转自:http://info.codepub.com/2008/09/info-22582.html
原文如下:
使用场合:当某个页面数据修改时,需要执行某些操作时
在页面的body加载事件(onload)中加上initFileds()就可以记录页面的初始数据
在需要判断页面数据是否改变时调用checkModification()方法就可判断数据是否改变
返回值为true就是已经改变
返回值为false就是没有改变
// 页面编辑数据
var inputsData;
var textareasData;
var selectsData;
// 记录下表单中的原始值
function initFileds() {
var inputs = document.getElementsByTagName("input");
var textareas = document.getElementsByTagName("textarea");
var selects = document.getElementsByTagName("select");
inputsData = new Array(inputs.length);
for (var i=0;i<inputs.length;i++) {
inputsData[i] = inputs[i].value;
if (inputs[i].type=="radio") {
inputsData[i]=inputs[i].checked;
}
}
textareasData = new Array(textareas.length);
for (var i=0;i<textareas.length;i++) {
textareasData[i] = textareas[i].value;
}
selectsData = new Array(selects.length);
for (var i=0;i<selects.length;i++) {
selectsData[i] = selects[i].value;
}
}
/*
* 判断表单中值是否被修改了
* submitCommand 表单有改动时,执行的javascript代码
*/
function checkModification(submitCommand) {
var inputs = document.getElementsByTagName("input");
var textareas = document.getElementsByTagName("textarea");
var selects = document.getElementsByTagName("select");
var hasBeenChanged = false;
for (var i=0;i<inputs.length;i++) {
if (inputs[i].type=="radio"&&(inputs[i].checked!=inputsData[i])) {
hasBeenChanged = true;
inputsData[i]=inputs[i].checked;
}
if (inputs[i].type!="radio"&&inputsData[i]!=inputs[i].value) {
if(inputs[i].name!="actionType"){
hasBeenChanged = true;
}
inputsData[i]=inputs[i].value;
}
}
for (var i=0;i<textareas.length;i++) {
if (textareasData[i]!=textareas[i].value) {
hasBeenChanged = true;
textareasData[i]=textareas[i].value;
}
}
for (var i=0;i<selects.length;i++) {
if (selectsData[i]!=selects[i].value) {
hasBeenChanged = true;
selectsData[i]=selects[i].value;
}
}
if (hasBeenChanged&&confirm("数据已经改变,是否保存?")) {
eval(submitCommand);
}
}
原文如下:
使用场合:当某个页面数据修改时,需要执行某些操作时
在页面的body加载事件(onload)中加上initFileds()就可以记录页面的初始数据
在需要判断页面数据是否改变时调用checkModification()方法就可判断数据是否改变
返回值为true就是已经改变
返回值为false就是没有改变
// 页面编辑数据
var inputsData;
var textareasData;
var selectsData;
// 记录下表单中的原始值
function initFileds() {
var inputs = document.getElementsByTagName("input");
var textareas = document.getElementsByTagName("textarea");
var selects = document.getElementsByTagName("select");
inputsData = new Array(inputs.length);
for (var i=0;i<inputs.length;i++) {
inputsData[i] = inputs[i].value;
if (inputs[i].type=="radio") {
inputsData[i]=inputs[i].checked;
}
}
textareasData = new Array(textareas.length);
for (var i=0;i<textareas.length;i++) {
textareasData[i] = textareas[i].value;
}
selectsData = new Array(selects.length);
for (var i=0;i<selects.length;i++) {
selectsData[i] = selects[i].value;
}
}
/*
* 判断表单中值是否被修改了
* submitCommand 表单有改动时,执行的javascript代码
*/
function checkModification(submitCommand) {
var inputs = document.getElementsByTagName("input");
var textareas = document.getElementsByTagName("textarea");
var selects = document.getElementsByTagName("select");
var hasBeenChanged = false;
for (var i=0;i<inputs.length;i++) {
if (inputs[i].type=="radio"&&(inputs[i].checked!=inputsData[i])) {
hasBeenChanged = true;
inputsData[i]=inputs[i].checked;
}
if (inputs[i].type!="radio"&&inputsData[i]!=inputs[i].value) {
if(inputs[i].name!="actionType"){
hasBeenChanged = true;
}
inputsData[i]=inputs[i].value;
}
}
for (var i=0;i<textareas.length;i++) {
if (textareasData[i]!=textareas[i].value) {
hasBeenChanged = true;
textareasData[i]=textareas[i].value;
}
}
for (var i=0;i<selects.length;i++) {
if (selectsData[i]!=selects[i].value) {
hasBeenChanged = true;
selectsData[i]=selects[i].value;
}
}
if (hasBeenChanged&&confirm("数据已经改变,是否保存?")) {
eval(submitCommand);
}
}
相关文章推荐
- [转]javascript 判断某页面上的表单数据是否改变过
- javascript 判断某页面上的表单数据是否改变过
- [转]javascript 判断某页面上的表单数据是否改变过
- javascript 判断某页面上的数据是否改变过
- js 关闭窗口时判断表单数据是否改变
- javascript检查表单数据是否改变
- 表单数据插件,用于获取表单数据,判断表单是否改变
- javascript检查表单数据是否改变的方法
- javascript检查表单数据是否改变的方法
- From表单判断内容是否有改变(二)
- javascript发送表单文件,ajax异步,不刷新页面上传PDF文件,并写入数据库,得到异步数据,提示上传成功或失败
- 记录ASP.NET页面表单初始状态(主要是为了前台可以根据这个判断页面是否变动了)
- js判断是否安装了客户端(针对IE,IE6除外)以及表单提交方式打开新页面
- 使用JavaScript脚本判断页面是否在微信中被打开
- 使用JavaScript脚本判断页面是否在微信中被打开
- JavaScript判断页面是否已经加载完毕
- jquery与javascript判断页面id是否存在的办法
- PHP判断FORM表单或URL参数来的数据是否为整数的方法
- javascript 判断是否为数组或对象或各种其它数据类型
- javascript js 判断页面是否加载完成