您好,欢迎访问一九零五行业门户网

获取表单控件原始(初始)值的方法_javascript技巧

复制代码 代码如下:
var saveobject = {};//保存变更的值
function savethisdata(obj,type){//产生变更的数据会在右侧显示原值
var defaultvalue,newvalue,key,displayvalue;
var defaultvaluedisplayfont;
switch (type) {
case 'select'://ext下拉框
defaultvalue=obj.originalvalue.split(']')[0].substring(1);
newvalue=obj.value;
key=obj.id;
defaultvaluedisplayfont=obj.container.dom.getelementsbytagname(font)[0];
displayvalue=obj.originalvalue.substring(defaultvalue.length+2);//去除括号及代码
break;
case 'check'://复选框
key=obj.name;
defaultvaluedisplayfont=obj.parentelement.getelementsbytagname(font)[0];
defaultvalue=obj.defaultchecked;
if(defaultvalue){
displayvalue='是';
}else{
displayvalue='否';
}
if(obj.checked){
newvalue=1;
}else{
newvalue=0;
}
break;
case 'rq'://ext日期对象
key=obj.name;
defaultvaluedisplayfont=obj.parentelement.parentelement.getelementsbytagname(font)[0];
defaultvalue=obj.defaultvalue;
newvalue=obj.value;
displayvalue=defaultvalue;
break;
case 'enum'://ext封装的枚举下拉框对象
key=obj.id;
defaultvalue=obj.startvalue;
newvalue=obj.value;
displayvalue=obj.originalvalue;
defaultvaluedisplayfont=obj.container.dom.getelementsbytagname(font)[0];
break;
default:
if(arguments[2]!=null){//年月控件
var monthfieldid=obj.container.dom.id.split(_)[1];
key=monthfieldid;
defaultvalue=ext.getdom('sccjgzny').defaultvalue;
newvalue=ext.getdom('sccjgzny').value;
var yy=defaultvalue.substring(0,7);
displayvalue=yy.replace('-','年')+'月';
defaultvaluedisplayfont=epx.get(monthfieldid).container.dom.getelementsbytagname(font)[0];
}
else{
key=obj.name;
defaultvaluedisplayfont=obj.parentelement.getelementsbytagname(font)[0];
defaultvalue=obj.defaultvalue;
newvalue=obj.value;
displayvalue=defaultvalue;
}
break;
}
saveobject[key] = newvalue;
if(defaultvalue != newvalue){
if(defaultvalue=='' && type != 'check'){
defaultvaluedisplayfont.innerhtml=    ;
}else{
defaultvaluedisplayfont.innerhtml=displayvalue;
}
} else {
defaultvaluedisplayfont.innerhtml='';
delete saveobject[key];
}
}
效果图:
其它类似信息

推荐信息