-
var ArrOldValue=new Array(); window.onload=function(){ var arr = document.form1.elements; for(var i=0;i<arr.length;i++){ if(arr[i].type == "text"||arr[i].type=="textarea")//textbox { ArrOldValue[ArrOldValue.length] = new Array(arr[i].id,arr[i].value,arr[i].title); } else if(arr[i].type=="checkbox")//checkbox { ArrOldValue[ArrOldValue.length] = new Array(arr[i].id,arr[i].checked==true?"是":"否",arr[i].parentNode.title); } else if(arr[i].type=="select-one")//dropdownlist { var dropText=""; var index=arr[i].selectedIndex; if(arr[i].value=="0"||arr[i].value==""||arr[i].value=="-1")//没选择 { dropText="空"; } else { dropText=arr[i].options[index].text; } ArrOldValue[ArrOldValue.length] = new Array(arr[i].id,dropText,arr[i].title); } } } function Check() { var entID='<%=EditID %>'; var entCode='<%=entCode %>'; var recorderName='<%=recorderName %>'; var recorderID='<%=recorderID %>'; if(Validator.Validate(form1,2)) { var logInfo=""; for(var i=0;i<ArrOldValue.length;i++) { var obj=document.getElementById(ArrOldValue[i][0]); if(obj.type == "text"||obj.type=="textarea")//textbox { if(obj.value!=ArrOldValue[i][1]) { var oldText=ArrOldValue[i][1]==""?"空":ArrOldValue[i][1]; var newText=obj.value==""?"空":obj.value; logInfo+=ArrOldValue[i][2]+": 由 \""+oldText+"\" 被修改为 \""+newText+"\"\n"; } } else if(obj.type=="checkbox")//checkbox { var boolText= obj.checked==true?"是":"否"; if(boolText!=ArrOldValue[i][1]) { logInfo+=ArrOldValue[i][2]+": 由 \""+ArrOldValue[i][1] + "\" 被修改为 \""+boolText + "\"\n"; } } else if(obj.type=="select-one")//dropdownlist { var index=obj.selectedIndex; var dropText = obj.options[index].text; if(obj.value=="0"||obj.value==""||obj.value=="-1")//没选择 { dropText="空"; } if(dropText!=ArrOldValue[i][1]) { logInfo+=ArrOldValue[i][2]+": 由 \""+ArrOldValue[i][1]+"\" 被修改为 \""+dropText+"\"\n"; } } } //alert(logInfo); if(logInfo!="") { NewEdit1.Add(logInfo,entID,entCode,recorderName,recorderID); } return true; } else { return false; } }
-
C# code
-
后台: Ajax.Utility.RegisterTypeForAjax(typeof(NewEdit1)); this.BtnSaveEnt.Attributes.Add("OnClick", "return Check();"); recorderName = this.UserName;//前台用到 recorderID = this.UserId.ToString();//前台用到 /// <summary> /// 记录日志信息 /// </summary> /// <param name="logInfo">日志信息</param> /// <param name="entID">ID</param> /// <param name="entCode">代码</param> /// <param name="recorderName">变更者</param> /// <param name="recorderID">变更者ID</param> [Ajax.AjaxMethod] public void Add(string logInfo,string entID,string entCode,string recorderName,string recorderID) { bll.AddLog(logInfo, entID, entCode, recorderName,recorderID); }