ajax返回json
function getAccountCheckDifference(recordId,balance,acountBalance){var ajaxObj1=new nstc.AjaxObject();ajaxObj1.initRequest(queryCallBack,'text');ajaxObj1.doGet("wcl_ra_35_02_02.do?recordId=" + recordId);}function queryCallBack(jsonObj,balance,acountBalance) {if(jsonObj != null){var jsonArry = jsonObj.parseJSON();if (jsonArry != ""&&jsonArry !='null') { var frt = 0; var fpt = 0; var mrt = 0; var mpt = 0; var actDate,vchNo,f1,f2,m1,m2,row,cell; var sugest; for (var i=mainTable2.rows.length-7;i>1;i--){ row = mainTable2.rows; mainTable2.firstChild.removeChild(row); } for(var i = 0 ; i < jsonArry.length; i++) {if (i==jsonArry.length-1){balance = jsonArry.Balance;sugest = jsonArry.Suggestion;continue;} actDate = jsonArry.ActDate; vchNo = jsonArry.VchNo; f1 = jsonArry.Frec?parseFloat(jsonArry.Frec):0; f2 = jsonArry.Fpay?parseFloat(jsonArry.Fpay):0; m1 = jsonArry.Mrec?parseFloat(jsonArry.Mrec):0; m2 = jsonArry.Mpay?parseFloat(jsonArry.Mpay):0; frt += f1; fpt += f2; mrt += m1; mpt += m2; document.getElementById("frt").innerHTML = "&nbsp;"+frt.toFixed(2); document.getElementById("fpt").innerHTML = "&nbsp;"+fpt.toFixed(2); document.getElementById("mrt").innerHTML = "&nbsp;"+mrt.toFixed(2); document.getElementById("mpt").innerHTML = "&nbsp;"+mpt.toFixed(2); row = mainTable2.insertRow(i+2); cell = row.insertCell(0); cell.style.textAlign = "center"; cell.innerText = actDate; cell = row.insertCell(1); cell.style.textAlign = "left"; cell.innerText = vchNo; cell = row.insertCell(2); cell.style.textAlign = "right"; cell.innerText = f1; cell = row.insertCell(3); cell.style.textAlign = "right"; cell.innerText = f2; cell = row.insertCell(4); cell.style.textAlign = "right"; cell.innerText = m1; cell = row.insertCell(5); cell.style.textAlign = "right"; cell.innerText = m2; cell = row.insertCell(6); cell.style.textAlign = "right"; cell.innerText = " "; } frt = FormatMoney(frt,2,""); fpt = FormatMoney(fpt,2,""); mrt = FormatMoney(mrt,2,""); mpt = FormatMoney(mpt,2,""); var mbalanceVal=FormatMoney(balance,2,""); document.getElementById("mbalance").innerHTML = "&nbsp;"+mbalanceVal; if (sugest && sugest!=null && sugest!='') document.getElementById("suggestion").value = sugest; var adjfinance=0; var adjMember=0; calcuFinance(frt,fpt,mrt,mpt,balance); calcuMember(frt,fpt,mrt,mpt,balance); amtDiff(adjfinance,adjMember);}else{document.getElementById("frt").innerHTML = "&nbsp;";document.getElementById("fpt").innerHTML = "&nbsp;"; document.getElementById("mrt").innerHTML = "&nbsp;"; document.getElementById("mpt").innerHTML = "&nbsp;"; document.getElementById("mbalance").innerHTML = "&nbsp;"; $("adjustFval").innerHTML="&nbsp;"; $("adjustMval").innerHTML="&nbsp;" $("amountdif").innerHTML="&nbsp;"}}} 后台java处理返回jsonprivate JSONArray getJson(AccountCheckDifference[] diffArry) {SimpleDateFormat df = new SimpleDateFormat("yyyy-MM-dd");JSONArray json = new JSONArray();for (int i = 0; i < diffArry.length; i ++) {JSONObject t = new JSONObject();try {t.put("Id", CastUtil.trimNull(diffArry.getId()));t.put("RecordId", CastUtil.trimNull(diffArry.getRecordId()));t.put("ActDate", CastUtil.trimNull(df.format(diffArry.getActDate())));t.put("VchNo", CastUtil.trimNull(diffArry.getVoucherNo()));t.put("Fpay", CastUtil.trimNull(diffArry.getFinancePay()));t.put("Frec", CastUtil.trimNull(diffArry.getFinanceReceive()));t.put("Mpay",CastUtil.trimNull(diffArry.getMemberPay()));t.put("Mrec",CastUtil.trimNull(diffArry.getMemberReceive()));} catch (JSONException e) {e.printStackTrace();}json.put(t);}return json;}
JSONArray json = getJson(this.getListToArray(record.getDifferences()));JSONObject t = new JSONObject();try{t.put("Balance", record.getBalance());t.put("Suggestion", record.getSuggestion());}catch(Exception ex){ex.printStackTrace();}json.put(t);getRequest().setAttribute("json", json.toString());
js对ajax封装
/** * javascript 函数库孙钰佳 2007/3/13 创建 * 创建命名空间(由于js本身不存在命名空间,这里模拟命名空间) */if (nstc == null) var nstc = {};if (nstc.debug == null)nstc.debug = {};/** * 通过id取得控件对象,如果传入的本身就是一个对象(非String)则返回这个对象 */if (document.getElementById) {nstc.byId = function() { var elements = new Array(); for (var i = 0; i < arguments.length; i++) { var element = arguments; if (typeof element == 'string') { element = document.getElementById(element); } if (arguments.length == 1) { return element; } elements.push(element); } return elements;};}else if (document.all) {nstc.byId = function() { var elements = new Array(); for (var i = 0; i < arguments.length; i++) { var element = arguments; if (typeof element == 'string') { element = document.all; } if (arguments.length == 1) { return element; } elements.push(element); } return elements;};}/** * 别名 $ to nstc.byId */var $;if (!$) {$ = nstc.byId;}var $F;if(!$F){$F =function(id){return $(id).value;}}var $U;if(!$U){$U =function(id){var ret=$(id).value;if(ret!=null)return nstc.urlEncode(ret);else return null;}}/*** 去掉字符串左右的空格 */nstc.trim = function(str) { return str==null?"":str.replace(/(^\s*)|(\s*$)/g,"");}// 最快 的变色方法不考虑性能时使用nstc.trBgColorOvernstc.trBgColorOverFast=function(s) { //if (!s.contains(event.fromElement)) {nstc.onmouseOverOldColor = s.bgColor;s.bgColor ='#ffffcc';} s.bgColor ='#ffffcc';}nstc.trBgColorOutFast=function(s) { //if (!s.contains(event.toElement)) s.bgColor = nstc.onmouseOverOldColor ; s.bgColor ='#ffffff';}//当鼠标移入tr时的颜色nstc.trBgColorOver=function (o){if(o.className!='onclicked'){o.oldClassName=o.className;o.className="mouseOver";}}//当鼠标移出tr时的颜色nstc.trBgColorOut=function (o){if(o.className!='onclicked')o.className=o.oldClassName;}//当鼠标点击tr时的颜色nstc.onclickTrBgColor=function (o){var tb=nstc.findParent(o , "TABLE");for(var i= 0 ;i<tb.rows.length;i++){var row=tb.rows;row.onclickClassName ="";if(row.className=='onclicked')row.className =row.oldClassName;}o.className='onclicked';o.onclickClassName=o.className;}//寻找一个对象的父元素nstc.findParent=function(object , tag){ if(object == null || typeof(object) != "object") return null ; var node = object.parentElement ; if(node == null) return null ; if(node.tagName == tag) return node ; else return nstc.findParent(node , tag) ;}//去除字符串中所有非数字,逗点的字符(负号保留)nstc.fmtNumeric = function(s){ return s.replace(/[^\d|.|-]/g , '') ;}//一个汉字按2个字符算,返回字符串长度nstc.length = function(str){var strlength=0;for (var i=0;i<str.length;i++){if(str.charCodeAt(i)>=1000) strlength += 2; else strlength += 1;}return strlength;}/***********************************************************************************************///为table增加一行table对象的rowNo属性自增1nstc.addRow=function(obj,index){var tb=$(obj);var insertIndex=(index==null)?-1:index;var row = tb.insertRow(insertIndex);//新增一行if(typeof tb.rowNo=="undefined")tb.rowNo=0;tb.rowNo++;return row;}//隐藏一列tb为table对象,idx为列号从0开始nstc.hiddenTd=function(tb,idx){for(var i=0,rows=tb.rows;i<rows.length;i++) rows.cells.style.display="none";}nstc.hiddenObj=function(obj){if(obj!=null&&obj.style!=null&&obj.style.display!=null) obj.style.display="none";}/*为tr添加一个td,otr为tr对象,align为对齐方式,*obj为左对齐的对象的array, rightObj 为右对齐的对象的array*当obj不是object的时候使用innerHTML填充 *如果rightObj为空则lwidth,rwidth,isNoWrap不生效应留空*/nstc.addTd=function(otr,align,obj,rightObj,lwidth,rwidth,isNoWrap,colspan){var otd = document.createElement("td");if(typeof obj=="object"&&typeof rightObj!="undefined"&&rightObj!=null){ var subTbEle = document.createElement('<table width="100%" border="0" cellspacing="0" cellpadding="0"></table>') ; var row=subTbEle.insertRow(-1); var lNod=row.insertCell(0); var rNod=row.insertCell(1); if(isNoWrap!=false)lNod.style.whiteSpace="nowrap"; if(isNoWrap!=false)rNod.style.whiteSpace="nowrap"; rNod.style.textAlign="right";if(typeof lwidth!="undefined"&&lwidth!=null)lNod.style.width=lwidth;if(typeof rwidth!="undefined"&&rwidth!=null)rNod.style.width=rwidth;for(var i= 0 ;i< obj.length;i++) lNod.appendChild(nstc.addTd.getObject(obj));for(var i= 0 ;rightObj!=null&&i< rightObj.length;i++)rNod.appendChild(nstc.addTd.getObject(rightObj)); otd.appendChild(subTbEle);}else if(typeof obj=="object"&&(typeof rightObj=="undefined"||rightObj==null)){for(var i= 0 ;i< obj.length;i++)otd.appendChild(nstc.addTd.getObject(obj));}elseotd.innerHTML = obj;otd.align=align;if(isNoWrap!=false)otd.style.whiteSpace="nowrap";if(colspan!=null)otd.colSpan=colspan;otr.appendChild(otd);return otd;}//nstc.addTd属性下的专业方法nstc.addTd.getObject=function(ee){if(typeof ee=="string") return nstc.createSpan("",ee);if(nstc.addTd.isHiddenInputBorder!=false){if(ee.type!='text'&& ee.type!=null)return ee;//ee.style.borderWidth='1';//ee.onmouseover=Function("if(this.readOnly!=true){this.style.borderWidth='1';this.style.backgroundColor='ffffff';}");//ee.onmouseout=Function("this.style.borderWidth='0';this.style.backgroundColor='transparent';");}return ee;}/**功能:建立一个INPUT对象参数:type-页面input元素标签的type类型(eg. text,checkbox,hidden ……) name-页面input元素的name值 value-页面input元素的value值 ext-扩展(eg. readonly,style="width:100%"……)*/nstc.createInput=function(type , name , value , ext){ if(value == null||value=="null") value = "" ; if(ext == null)ext=""; var et = document.createElement("<input type=" + type + " name=" + name + " value='" + value + "' "+ ext +">") ; et.id = name; if(ext!=null&&ext.toLowerCase().indexOf('class=')<0) et.className=type; et.initValue=value; return et ;}//建立一个checkbox组nstc.createCheckDiv=function(name,ops,ext){ var element = document.createElement("div"); var elementHidden = nstc.createInput("hidden","h"+name); element.id = name; for(var i=0;i<ops.length;i=i+2) { var chk = nstc.createInput("checkbox",name+"chk",ops," onPropertyChange=\"nstc.checkBoxChecked(this.parentNode,'finrole')\""); chk.tabIndex = -1 ; chk.style.borderStyle = "none"; element.appendChild(chk); var textName = document.createElement("F"); textName.innerText = ops; element.appendChild(textName); } element.appendChild(elementHidden); return element ;}//给一个checkbox组赋值nstc.checkBoxChecked=function(element,checkBoxName){var inputs = element.getElementsByTagName("INPUT");var inputsHidden;for(var i=0;i<inputs.length;i++){if(inputs.type=="hidden"){ inputsHidden = inputs;}}inputsHidden.value = "1";for(var i=0;i<inputs.length;i++){if(inputs.type=="checkbox"){if(inputs.name.startWith(checkBoxName)) {if(inputs.checked == true) {inputsHidden.value = inputsHidden.value + "1";} else {inputsHidden.value = inputsHidden.value + "0";}}}}}//建立一个下拉框nstc.createSelect=function(name,ops,ext){ var typeChars = "<select name='" + name + "' " + ext +"></select>"; var element = document.createElement(typeChars) ; element.id = name; for(var i=0;i<ops.length;i=i+2) element.options.add(new Option(ops,ops)); return element ;}//建立一个span元素nstc.createSpanHtml=function(name, value, ext){return "<Span name='" + name + "' " + ext +">"+value+"</Span>" ;}nstc.createSpan=function(name, value, ext){ var e = document.createElement(nstc.createSpanHtml(name, value, ext)) ; e.id=name; if(value != null)e.innerText=value; return e ;}//建立一个超链接nstc.createLinkHtml=function(name, url, text, ext){ if(url==null||url==""||url=="#") url="javascript:void('NSTC');" return "<a name=\"" + name + "\" href=\"" + url + "\" " + ext +">"+text+"</a>" ;}nstc.createLink=function(name, url, text, ext){ var element = document.createElement(nstc.createLinkHtml(name, url, text, ext)) ; element.id=name; element.innerText=text; return element ;}//建立一个日期控件nstc.createDateButton=function(target){var e = document.createElement("<a onclick=\"showCalendar('"+$(target).name+"');\"></a>") ;e.appendChild(document.createElement("<span class='DateImg'>"));return e;}//建立一个删除row的按钮nstc.createRemoveInput=function(isButton,name,value,ext){var removeBut=nstc.createInput(isButton==true?"button":"checkbox",name,value==null?"删":value,ext);if(isButton==true)removeBut.onclick=Function("nstc.removeRow(this);");elseremoveBut.onpropertychange = Function("nstc.changeBgColor(this)") ;return removeBut;}//建立一个删除row的按钮nstc.createRemoveInputOth=function(isButton,name,value,ext){var removeBut=nstc.createInput(isButton==true?"button":"checkbox",name,value==null?"删":value,ext);if(isButton==true)removeBut.onclick=Function("nstc.removeRow(this);");return removeBut;}//删除obj所在的trnstc.removeRow=function(obj){var row=nstc.findParent($(obj) , "TR");var tb=nstc.findParent(row , "TABLE"); tb.deleteRow(row.rowIndex) ;}//改变obj所在tr的背景色nstc.changeBgColor=function(obj,color){var row=nstc.findParent($(obj) , "TR"); if(row == null) return null ; if(row.oldClassName==null)row.oldClassName=row.className; row.className = obj.checked==true?"onclicked":row.oldClassName ;}//追加事件,对一个对象只能追加一次nstc.appendEvent=function(o,et,code){if(typeof o=="string"){o=o+code;}else if(o!=null||typeof o=="function"&&o.tempFunc==null){o=o;o=function(){o();eval(code);}}else if(o==null){o=function(){eval(code);}}}//根据名称like匹配 选中checkbox 例如 参数为abc_ true 所有abc_开头的checkbox均选中 syj 07/12/23nstc.checkedAllByName=function(ne,isChecked){var objs = document.getElementsByTagName("INPUT");for(var i=0;i<objs.length;i++)if(objs.type == "checkbox"&&nstc.startWith(objs.name,ne))objs.checked=isChecked;}//根据名称like匹配 选中checkbox 例如 参数为abc_ true 所有abc_开头的checkbox均选中 syj 07/12/23nstc.checkedDivAllByName=function(ne,isChecked,div){var objs = div.getElementsByTagName("INPUT");for(var i=0;i<objs.length;i++)if(objs.type == "checkbox"&&nstc.startWith(objs.name,ne))objs.checked=isChecked;}//取元素的位置nstc.getposition=function(obj) {var r = {};r['x'] = obj.offsetLeft; r['y'] = obj.offsetTop;while(obj = obj.offsetParent) { r['x'] += obj.offsetLeft; r['y'] += obj.offsetTop;}return r;}// c是否以s开头nstc.startWith = function(c,s){ return c.match(new RegExp("^" + s)) != null ;}//字符串转成日期类型 格式 MM/dd/YYYY MM-dd-YYYY YYYY/MM/dd YYYY-MM-dd nstc.strToDate=function(ds){ var d = new Date(Date.parse(ds)); if (isNaN(d)){ var arys= ds.split('-'); d = new Date(arys,arys-1,arys); } return d; }//初始selectnstc.initSelect=function(ele,value){if(typeof(ele) != "object") ele=$(ele);ele.value=value;if(ele.selectedIndex==-1&&ele.options!=null&&ele.options.length>0) ele.selectedIndex=0;}//导出table nstc.exportExcel=function(tb){if($(tb)==null)alert("找不到待导出的表"+tb);var frm=$("_ExcelForm_");if(frm==null){frm=document.createElement("<form style='display:none;' name='_ExcelForm_' method='post' action='pages/excel.jsp' target='message' ></form>");frm.innerHTML="<input name='text' type='hidden'/>";document.body.appendChild(frm);}$('text').value = $(tb).outerHTML;frm.submit();}//打印一个对象的所有属性nstc.debug.showPrpos=function(obj){ var props = "";for(var p in obj) if(typeof(obj)=="function") obj(); else props+= p + "=" + obj + "\t";alert(props); }//单位换算 unit单位YY 亿元WY万元 QY千元nstc.calcMnyUnit=function(mny, unit) {if ("YY"==unit)return FormatMoney(Math.floor(mny / 100000000),0);else if ("WY"==unit)return FormatMoney(Math.floor(mny / 10000),0);else if ("QY"==unit)return FormatMoney(Math.floor(mny / 1000),0);return(FormatMoney(mny));}//单位换算table中的td的金额 找不到cell.mnyParent对应的引用,取最右侧的控件进行折算nstc.calcInnerHTMLMnyUnit=function(cell,unit){if(cell.mny==null&&nstc.trim(cell.innerText)=='')return ;cell.style.textAlign='right'var e=cell.mnyParent==null?cell.childNodes:cell.mnyParent;e=e==null?cell:e;var isObj=typeof(e.innerText)=="undefined";var value=isObj?e.nodeValue:e.innerText;if(cell.mny==null)cell.mny=nstc.fmtNumeric(value);var money=nstc.calcMnyUnit(cell.mny,unit);if(isObj) e.nodeValue=' '+money;else e.innerText=money; }//单位换算table中的td的金额:tb对象,tr起始行startIdx,td的index数组list,单位unit YY 亿元WY万元 QY千元 当list值为['*']且TD的hasMnyUnit属性不为null时折算该TDnstc.calcMnyUnitOfTb=function(tb,list,unit,startIdx){for(var i=startIdx==null?1:startIdx;i<tb.rows.length;i++){var cells=tb.rows.cells;if(list=='*'){for(var k= 0 ,size=cells.length; k<size; k++)if(cells.hasMnyUnit!=null)nstc.calcInnerHTMLMnyUnit(cells,unit);}else{for(var k= 0 ; k<list.length;k++){var tmp=list-(cells.colSpan-1);nstc.calcInnerHTMLMnyUnit(cells,unit);}}}}//移除一个table从index开始的全部TR index指row.rowIndex id为table的id或table对象nstc.removeTbRows = function (id, index) {for (var tb = $(id), index = (index == null) ? 1 : index; (tb.rows.length - 1) >= index; )tb.deleteRow(tb.rows.length - 1);}nstc.urlEncode=function(str){var i,c,ret="",strSpecial="!\"#$%&'()*+,/:;<=>?@[\]^`{|}~%";for(i=0;i<str.length;i++){c=str.charAt(i);if(c==" ")ret+="+";else if(strSpecial.indexOf(c)!=-1)ret+="%"+str.charCodeAt(i).toString(16);elseret+=c;}return ret;}/** * 将一个页面中的所有控件变为只读并去掉边框 注:一个需要设为只读的对象如果有同级的兄弟结点,那么这些兄弟结点会消失 解决办法:将这个对象放在<span>或<lable>中 * create by zhj rebuild by syj **/nstc.readOnlyPage=function(doc){doc=doc==null?document:doc;for(var objs=doc.getElementsByTagName("INPUT"), n=objs.length;n>0;n--){//需要在数组中,从后往前遍历,否则会出现有些数组中的有些对象访问不到var obj = objs;var type = obj.type;if(type == "text"){var txtValue = obj.value;if( txtValue == "" ) txtValue = "&nbsp;"obj.parentElement.innerHTML = txtValue;}else if(type == "checkbox"){obj.onclick=function(){this.checked=!this.checked}}else if(type == "radio"){ obj.disabled=true;}else if(type == "button"){obj.style.display = "none";}else if(type == "reset"){obj.style.display = "none";}else if(type == "file"){obj.style.display = "none";}}for(var objs = doc.getElementsByTagName("SELECT"),n=objs.length;n>0;n--){var obj = objs;if(obj.selectedIndex >= 0) {obj.parentElement.innerHTML = obj.options(obj.selectedIndex).text;} else {obj.parentElement.innerHTML = "&nbsp;";}}for(var objs = doc.getElementsByTagName("TEXTAREA"),n=objs.length;n>0;n--){var obj = objs;obj.parentElement.innerHTML = obj.innerHTML;}}//为nstcExt提供可插拔的机制if(nstc.msgBox==null)nstc.msgBox=function(m){alert(m);}/***********************************************************************************************//*封装好的xmlHttp对象 *method: initRequest,doGet */nstc.AjaxObject = function(){this.initRequest = initRequest;this.doGet = doGet; var httpRequest;var isSync; function initRequest(responseFunction,type,isSync1){isSync=isSync1;if(isSync==null)isSync=false; if (window.ActiveXObject){ // 浏览器是IE try{httpRequest = new ActiveXObject("Microsoft.XMLHTTP");}catch (e){try{httpRequest = new ActiveXObject("Msxml2.XMLHTTP");}catch (e){}} }else if (window.XMLHttpRequest){ // 浏览器是非IE,如Mozilla, Safari,... httpRequest = new XMLHttpRequest(); if (httpRequest.overrideMimeType)httpRequest.overrideMimeType('text/xml'); } if (!httpRequest){alert('放弃请求不能创建XMLHTTP实例'); return false;} httpRequest.onreadystatechange = function(){ if (httpRequest.readyState == 4){ if (httpRequest.status == 200){ var doc;if(type=='text') doc = httpRequest.responseText;else doc = httpRequest.responseXML;if(doc==null){return ;}if( responseFunction == null ) return;if( typeof(responseFunction) != "function" ) return;responseFunction(doc); }else{responseFunction(null);} } } return true; } function doGet(url){ if(isSync==false) httpRequest.open('GET', initUrl(url),false); else httpRequest.open('GET', initUrl(url)); httpRequest.send(null); return true; } function initUrl(url){ if(url.indexOf('machineDate')==-1){if(url.indexOf('?')==-1) url+="?machineDate="+new Date().getTime();else url+="&mechineDate="+new Date().getTime();return url; }}}/** * 功能:克隆对象 * 参数:obj-待克隆对象,index-克隆后对象附加名 * 返回:克隆后对象 */nstc.clone=function(obj,index,value,onchgCheckbox){var cloneObj=obj.cloneNode(true);if(index!=null){if(obj.name!=null)cloneObj.name=obj.name+"_"+index;if(obj.id!=null)cloneObj.id=obj.id+"_"+index;}if(onchgCheckbox!=null)cloneObj.onchange=function(){onchgCheckbox.checked=true;}nstc.initSelect(cloneObj,value);return cloneObj;}/**功能: 建立一个日期格式文本框参数:name-名字 value-值 ext-扩展 */nstc.createDate=function(name , value , ext){var e=ext;var spanObj=document.createElement("<span style='width: 100%'></span>");var textObj=nstc.createInput("text",name,value,e);textObj.className='DateText';var dateButton=nstc.createDateButton(textObj);spanObj.appendChild(textObj);spanObj.appendChild(dateButton);return spanObj;}//回传对象方法(func),待回传的对象(obj),如果func不返回false,回传后关闭窗口nstc.setObj=function(func,obj){if(window.opener!=null&&opener!=null){var isClose=opener(obj);if(isClose!=false)self.close();}else if(parent!=null&&parent!=null){var isClose=parent.setKm(akm);if(isClose!=false)self.close();}else{}}//回传对象方法(func),待回传的对象数组(list),如果func不返回false,回传后关闭窗口nstc.setArr=function(func,arr){if(window.opener!=null&&opener!=null){var isClose=opener(arr);if(isClose!=false)self.close();}else if(parent!=null&&parent!=null){var isClose=parent.setKm(akm);if(isClose!=false)self.close();}else{}}/** * 功能:计算两个日期之差 * 参数:sDate-开始日期,eDate-结束日期,resultType-返回类型(d-日,week-星期,m-月,y-年默认为日) * 返回:两日期之差 */nstc.DateDiff=function(sDate,eDate,resultType){ var miStart = Date.parse(sDate.replace(/\-/g, '/')); var miEnd = Date.parse(eDate.replace(/\-/g, '/')); var radix=1000 * 24 * 3600; var divisor=1; if(resultType==null||resultType=="d") divisor=radix; else if(resultType=="w") divisor=radix*7; else if(resultType=="m") divisor=radix*30; else if(resultType=="y") divisor=radix*365; return (miEnd-miStart)/divisor;} //判断结束日期是否早于开始日期nstc.checkDates=function(sdate,edate,msg){msg=msg==null?"结束日期须晚于开始日期":msg;if(nstc.DateDiff($F(sdate),$F(edate))<0){nstc.msgBox(msg);return false;}return true;}//日期文本框输入自动加-nstc.dateInput=function(obj){if(obj.value==" --")obj.value="";}
页:
[1]