var mygrid_recv_2; var page_count = 5; var column_count; var jsonWmsZXInfoObj; var changeCount = 0; //两端去空格函数 String.prototype.trim = function () { return this.replace(/(^\s*)|(\s*$)/g, ""); } function $(id) { return document.getElementById(id); } function initWinScreen2() { var winScreenHeight = 0; var winScreenWidth = 0; if (window.screen.height) { winScreenHeight = window.screen.height; } if (window.screen.width) { winScreenWidth = window.screen.width; } if (winScreenWidth >= 1440 && winScreenWidth >= 900) { document.getElementById("mygrid_recv_2").style.height = "580px"; } else if (winScreenWidth >= 1366 && winScreenWidth >= 768) { document.getElementById("mygrid_recv_2").style.height = "340px"; } else if (winScreenWidth >= 1024 && winScreenWidth >= 768) { document.getElementById("mygrid_recv_2").style.height = "300px"; } } function initGrid2(handle,settlementid,billno) { mygrid_recv_2 = new dhtmlXGridObject('mygrid_recv_2'); mygrid_recv_2.setImagePath("../images/"); mygrid_recv_2.setSkin("xp"); // 0 1 2 3 4 5 6 7 8 9 10 11 12 //mygrid_recv_2.setHeader(",计费等级,费用类别,计费区间,单位,单价,增值价,封顶价,结束计费日期,备注,创建人,创建时间,委托单号"); // 0 1 2 3 4 5 6 7 8 mygrid_recv_2.setHeader("选择,客户名称,单号,实录时间,币别,汇率,实录金额,未核销金额,本次核销"); // mygrid_recv_2.setInitWidths("30,120,100,120,50,50,80,80,80"); mygrid_recv_2.setColAlign("center,center,center,center,center,center,center,center,center"); mygrid_recv_2.setColSorting("na,str,str,str,str,str,str,str,str"); mygrid_recv_2.setColTypes("ch,ro,ro,ro,ro,ro,ro,ro,ed"); var urlVal = "../Settlements/DoPayApplicationSettlementGridSource.aspx?read=exist&customername=" + escape($("txt_customerName").value) + "&handle=" + handle + "&settlementid=" + settlementid + "&billno=" + billno + "&feetype=" + $("h_feetype").value + "&val=" + newGuid(); var loader = dhtmlxAjax.getSync(urlVal); var loadVal = loader.xmlDoc.responseText; loader = null; if (parseInt(loadVal) == 1) { mygrid_recv_2.loadXML("../Settlements/DoPayApplicationSettlementGridSource.aspx?read=init&customername=" + escape($("txt_customerName").value) + "&handle=" + handle + "&settlementid=" + settlementid + "&billno=" + billno + "&feetype=" + $("h_feetype").value + "&val=" + newGuid()); setTimeout(function() { }, 200); } mygrid_recv_2.init(); mygrid_recv_2.enableEditEvents(true, false, true); mygrid_recv_2.enableMultiselect(true); mygrid_recv_2.enableKeyboardSupport(true); var pushVal = ""; var pressRecord = ""; var pressRowIndex = -1; var pressCellIndex = -1; var pressCount = 0; var isExchange = false; var shiftCount = 0; var isDelete = 0; var flagFilter = 0; var flagTab = 0; var flagEnter = 0; var flagDelete = 0; //手动编写Grid控件编辑事件,由于免费控件没有提供完整的编辑判断功能,现特此做更改 mygrid_recv_2.attachEvent("onEditCell", function (stage, rId, cInd, nValue, oValue) { var newCheckValue = false; //初始化状态 if (stage == 0) { var selectedId = mygrid_recv_2.getSelectedRowId(); var rowIndex = mygrid_recv_2.getRowIndex(selectedId); var oldVal = mygrid_recv_2.cellByIndex(rowIndex, 0).getValue().trim(); if (cInd == 0) { return false; } return true; } if (stage == 1) { var rowIndex = mygrid_recv_2.getRowIndex(rId); var txtEdit; for (i = 0; i < document.all.length; i++) { if (document.all(i).tagName == "TEXTAREA") { txtEdit = document.all(i); txtEdit.focus(); txtEdit.select(); break; } } } //如果编辑结束 if (stage == 2) { //获取当前RowIndex var rowIndex = mygrid_recv_2.getRowIndex(rId); if (cInd == 8) { var wj = parseFloat(mygrid_recv_2.cellByIndex(rowIndex, 7).getValue().trim()); if (nValue.trim() != "") { var isint = IsNum(nValue); if (!isint) { mygrid_recv_2.cellByIndex(rowIndex, cInd).setLabel("0.00"); return true; } // if (parseFloat(nValue.trim()) > wj) { alert("本次核销金额不能大于未核销金额!"); mygrid_recv_2.cellByIndex(rowIndex, cInd).setLabel("0.00"); return true; } //取数(包含负数) mygrid_recv_2.cellByIndex(rowIndex, 0).setValue(1); var bb = mygrid_recv_2.cellByIndex(rowIndex, 4).getValue().trim(); var hl = mygrid_recv_2.cellByIndex(rowIndex, 5).getValue().trim(); // var je1 = parseFloat($("txt_je1").value.trim()); var je2 = parseFloat($("txt_je2").value.trim()); var je3 = parseFloat($("txt_je3").value.trim()); var je4 = parseFloat($("txt_je4").value.trim()); var je5 = parseFloat($("txt_je5").value.trim()); var hl1 = parseFloat($("txt_hl1").value.trim()); var hl2 = parseFloat($("txt_hl2").value.trim()); var hl3 = parseFloat($("txt_hl3").value.trim()); var hl4 = parseFloat($("txt_hl4").value.trim()); var hl5 = parseFloat($("txt_hl5").value.trim()); var bb3 = $("ddl_bb3").value.trim(); if (oValue.trim() == "") { oValue = 0; } var hx = parseFloat(nValue) - parseFloat(oValue); $("txt_je5").value = Add(je5 * hl5, hx * hl, 2); if (bb == "USD") { $("txt_je5").value = Div((je5 * hl5 + hx * hl), hl, 2); } $("h_je5").value = $("txt_je5").value; var je32 = Cut((je1 * hl1 + je2 * hl2), ((je5 * hl5 + hx * hl) + je4 * hl4), 2); if (je32 < 0) { $("txt_je3").value = 0; var je42 = Add(je4, je32, 2); $("txt_je4").value = je42; //财务费用为RMB } else { $("txt_je3").value = je32; if (bb3 == "USD") { $("txt_je3").value = Div(je32, hl3, 2); } $("txt_je4").value = round2(((je1 * hl1 + je2 * hl2) - (je5 * hl5 + hx * hl) - je32), 2); } // $("ddl_bb5").value = bb; $("h_bb5").value = bb; $("txt_hl5").value = hl; //$("txt_je5").value = round2(nValue, 2); //#region 分开取大于0的数,并把小于等于0的设为0 // if (parseFloat(nValue.trim()) > 0) { // mygrid_recv_2.cellByIndex(rowIndex, 0).setValue(1); // var bb = mygrid_recv_2.cellByIndex(rowIndex, 4).getValue().trim(); // var hl = mygrid_recv_2.cellByIndex(rowIndex, 5).getValue().trim(); // $("ddl_bb5").value = bb; // $("h_bb5").value = bb; // $("txt_hl5").value = hl; // $("txt_je5").value = round2(nValue, 2); // // // var je1 = parseFloat($("txt_je1").value.trim()); // var je2 = parseFloat($("txt_je2").value.trim()); // var je3 = parseFloat($("txt_je3").value.trim()); // var je4 = parseFloat($("txt_je4").value.trim()); // var je5 = parseFloat($("txt_je5").value.trim()); // var hx = parseFloat(nValue) - parseFloat(oValue); // $("txt_je5").value = round2((je5 + (hx)),2); // var je32 = round2(((je1 + je2) - ((je5 + (hx)) + je4)),2); // if (je32 < 0) { // $("txt_je3").value = 0; // var je42 = round2((je4 + (je32)),2); // $("txt_je4").value = je42; // } // else { // $("txt_je3").value = je32; // $("txt_je4").value = round2(((je1 + je2) - (je5 + (hx)) - je32),2); // } // } // else { // mygrid_recv_2.cellByIndex(rowIndex, 0).setValue(0); // mygrid_recv_2.cellByIndex(rowIndex, cInd).setLabel("0.00"); // var bb = mygrid_recv_2.cellByIndex(rowIndex, 4).getValue().trim(); // var hl = mygrid_recv_2.cellByIndex(rowIndex, 5).getValue().trim(); // $("ddl_bb5").value = "RMB"; // $("h_bb5").value = "RMB"; // $("txt_hl5").value = "1"; // $("txt_je5").value = "0"; // // // var je1 = parseFloat($("txt_je1").value.trim()); // var je2 = parseFloat($("txt_je2").value.trim()); // var je3 = parseFloat($("txt_je3").value.trim()); // var je4 = parseFloat($("txt_je4").value.trim()); // var je5 = parseFloat($("txt_je5").value.trim()); // var hx = parseFloat(oValue); // $("txt_je5").value = round2((je5 - hx),2); // var je32 = round2(((je1 + je2) - (je5 - hx) - je4),2); // if (je32 < 0) { // $("txt_je3").value = 0; // var je42 = round2((je4 + (je32)),2); // $("txt_je4").value = je42; // } // else { // $("txt_je3").value = je32; // $("txt_je4").value = round2(((je1 + je2) - (je5 - hx) - je32),2); // } // } //#endregion } return true; } else { return true; } } }); //键盘操作事件 mygrid_recv_2.attachEvent("onKeyPress", function (code, cFlag, sFlag) { //onKeyPress begin //获取当前RowID var selectedId = mygrid_recv_2.getSelectedRowId(); //获取当前RowIndex var rowIndex = mygrid_recv_2.getRowIndex(selectedId); //获取当前CellIndex(ind) var ind = mygrid_recv_2.getSelectedCellIndex(); //触发操作事件前获取单元值 var oldVal = mygrid_recv_2.cellByIndex(rowIndex, ind).getValue(); //获取编辑单元 var txtEdit; for (i = 0; i < document.all.length; i++) { if (document.all(i).tagName == "TEXTAREA") { txtEdit = document.all(i); break; } } if (code >= 65 && code <= 90) {//如果是输入英文字符 return false; } else { return true; } }); setTimeout(function() { markStatusColor2(mygrid_recv_2); }, 400); } function saveRecvChange2() { mygrid_recv_2.editStop(); var jsonRateObj = null; for (var i = 0; i < mygrid_recv_2.getRowsNum(); i++) { var rowId = mygrid_recv_2.getRowId(i); var isbool = mygrid_recv_2.cellByIndex(i, 0).getValue(); if (isbool == "1") { // 1 2 3 4 5 6 7 //客户名称,单号,实录时间,币别,实录金额,未核销金额,本次核销"); var CUSTOMERNAME = mygrid_recv_2.cellByIndex(i, 1).getValue(); //客户名称 var BILLNO = mygrid_recv_2.cellByIndex(i, 2).getValue(); //单号 var CREATETIME = mygrid_recv_2.cellByIndex(i, 3).getValue(); //实录时间 var CURRENCY = mygrid_recv_2.cellByIndex(i, 4).getValue(); //币别 var EXCHANGERATE = mygrid_recv_2.cellByIndex(i, 5).getValue(); //汇率 var AMOUNT = mygrid_recv_2.cellByIndex(i, 6).getValue(); //实录金额 var DOAMOUNT2 = mygrid_recv_2.cellByIndex(i, 7).getValue(); //未核销金额 var DOAMOUNT = mygrid_recv_2.cellByIndex(i, 8).getValue(); //本次核销 var ISFINISH = 0; //是否全部完成核销 if (i != 0 && parseFloat(DOAMOUNT) == 0) { $("recvContainer_2").value = ""; alert("“本次核销”不能为零"); return -1; } if (DOAMOUNT == DOAMOUNT2) { ISFINISH = 1; } // if (jsonRateObj == null) { var cacheBuffer = ""; cacheBuffer += "{"; cacheBuffer += "\"GID\":\"" + rowId + "\","; cacheBuffer += "\"CUSTOMERNAME\":\"" + CUSTOMERNAME + "\","; cacheBuffer += "\"BILLNO\":\"" + BILLNO + "\","; cacheBuffer += "\"CREATETIME\":\"" + CREATETIME + "\","; cacheBuffer += "\"CURRENCY\":\"" + CURRENCY + "\","; cacheBuffer += "\"AMOUNT\":\"" + AMOUNT + "\","; cacheBuffer += "\"DOAMOUNT2\":\"" + DOAMOUNT2 + "\","; cacheBuffer += "\"DOAMOUNT\":\"" + DOAMOUNT + "\","; cacheBuffer += "\"ISFINISH\":\"" + ISFINISH + "\""; cacheBuffer += "}"; var result = ""; result += "{\"rates\":["; result += cacheBuffer; result += "]}"; jsonRateObj = eval('(' + result + ')'); } else { var newRateRow = jsonRateObj.rates; newRateRow = { GID: rowId, CUSTOMERNAME: CUSTOMERNAME, BILLNO: BILLNO, CREATETIME: CREATETIME, CURRENCY: CURRENCY, AMOUNT: AMOUNT, DOAMOUNT2: DOAMOUNT2, DOAMOUNT: DOAMOUNT, ISFINISH: ISFINISH }; jsonRateObj.rates.push(newRateRow); } } } if (jsonRateObj != null) { $("recvContainer_2").value = JSON.stringify(jsonRateObj); } return 1; } //post数据 function postEnter() { var myForm = document.getElementById("form1"); myForm.submit(); } function markStatusColor2(gridObj) { var count = gridObj.getRowsNum(); for (var i = 0; i < count; i++) { var status = gridObj.cellByIndex(i, 0).getValue(); var rowId = gridObj.getRowId(i); } } //全选框 function checkall2() { var checkStatus = $("ck_all").checked; if (checkStatus == 1) { var iCount = mygrid_recv_2.getRowsNum(); for (var i = 0; i < iCount; i++) { mygrid_recv_2.cellByIndex(i, 0).setValue(1); } } else { var iCount = mygrid_recv_2.getRowsNum(); for (var i = 0; i < iCount; i++) { mygrid_recv_2.cellByIndex(i, 0).setValue(0); } } } //获取GUID function newGuid() { var guid = ""; for (var i = 1; i <= 32; i++) { var n = Math.floor(Math.random() * 16.0).toString(16); guid += n; if ((i == 8) || (i == 12) || (i == 16) || (i == 20)) guid += "-"; } return guid.toUpperCase(); } //------------------------------------------------------------------------------------------------------------------------ function clearNoNum2(valObj) { //先把非数字的都替换掉,除了数字和. valObj = valObj.replace(/[^\d.]/g, ""); //必须保证第一个为数字而不是. valObj = valObj.replace(/^\./g, ""); //保证只有出现一个.而没有多个. valObj = valObj.replace(/\.{2,}/g, "."); //保证.只出现一次,而不能出现两次以上 valObj = valObj.replace(".", "$#$").replace(/\./g, "").replace("$#$", "."); return valObj; } //是否为数字 function IsNum(val) { var re = /^[-\+]?\d+(\.\d+)?$/; if (!re.test(val)) { return false; } else { return true; } } //是否为数字,且数值格式是否正确 function IsNumFormat(val) { var re = /^[-\+]?\d+(\.\d+)?$/; if (!re.test(val)) { return false; } else { if (val.toString().indexOf(".") > 0) { val.toString().replace("-", ""); val.toString().replace("+", ""); if (val.toString().substr(0, 1) == "0" && val.toString().substr(0, 2) != "0.") { return false; } } else { var re1 = /^[-\+]+[1-9]+[0-9]*]*$/; if (!re1.test(val)) { re1 = /^[1-9]+[0-9]*]*$/; if (!re1.test(val)) { return false; } } } return true; } } //是否为整数 function IsIntFormat(val) { re1 = /^[1-9]+[0-9]*]*$/; if (!re1.test(val)) { return false; } return true; } // function getIsNum(x) { var str = x.value.trim(); if (str == "0") { return; } else if (str == "") { str = 0; x.value = 0; } else { var bl = IsNumFormat(str); if (!bl) { alert("数值格式错误!"); x.focus(); x.select(); } } } //------------------------------------------------------------------------------------------------------- function txt_disabled() { document.getElementById('ddl_bb1').disabled = true; document.getElementById('ddl_bb2').disabled = false; // true; document.getElementById('ddl_bb3').disabled = false; document.getElementById('ddl_bb4').disabled = false; document.getElementById('ddl_bb5').disabled = true; document.getElementById('txt_hl1').readOnly = true; document.getElementById('txt_hl2').readOnly = false; // true document.getElementById('txt_hl3').readOnly = false; document.getElementById('txt_hl4').readOnly = false; document.getElementById('txt_hl5').readOnly = true document.getElementById('txt_je1').readOnly = false; document.getElementById('txt_je2').readOnly = false; // true document.getElementById('txt_je3').readOnly = false; document.getElementById('txt_je4').readOnly = false; document.getElementById('txt_je5').readOnly = true document.getElementById('txt_hl1').style.color = "#808080"; document.getElementById('txt_hl2').style.color = "#000000"; // "#808080"; document.getElementById('txt_hl3').style.color = "#000000"; document.getElementById('txt_hl4').style.color = "#000000"; document.getElementById('txt_hl5').style.color = "#808080"; document.getElementById('txt_je1').style.color = "#000000"; document.getElementById('txt_je2').style.color = "#000000"; // "#808080"; document.getElementById('txt_je3').style.color = "#000000"; document.getElementById('txt_je4').style.color = "#000000"; document.getElementById('txt_je5').style.color = "#808080"; } function txt_je1_onblur() { if ($("txt_je1").value.trim() != "") { var oje1 = parseFloat($("h_je1").value.trim()); var je1 = parseFloat($("txt_je1").value.trim()); var je4 = parseFloat($("txt_je4").value.trim()); var je5 = parseFloat($("txt_je5").value.trim()); var hl1 = parseFloat($("txt_hl1").value.trim()); var hl3 = parseFloat($("txt_hl3").value.trim()); var hl4 = parseFloat($("txt_hl4").value.trim()); var hl5 = parseFloat($("txt_hl5").value.trim()); var bb3 = $("ddl_bb3").value.trim(); $("txt_je2").value = round2((je1 - oje1),2); $("txt_je3").value = round2((je1 * hl1 - je4 * hl4 - je5 * hl5), 2); if (bb3 == "USD") { $("txt_je3").value = Div((je1 * hl1 - je4 * hl4 - je5 * hl5), hl3, 2); } $("txt_je1").value = oje1; //#region 分开取大于0的数,并把小于等于0的设为0 // if (je1 > oje1) { // $("txt_je2").value = round2((je1 - oje1),2); // $("txt_je3").value = round2((je1 * hl1 - je4 * hl4 - je5 * hl5), 2); // if (bb3 == "USD") { // $("txt_je3").value = Div((je1 * hl1 - je4 * hl4 - je5 * hl5), hl3, 2); // } // } // else { // $("txt_je2").value = "0.00"; // } // $("txt_je1").value = oje1; //#endregion } } function txt_je3_onblur() { if ($("txt_je3").value.trim() != "") { var je1 = parseFloat($("txt_je1").value.trim()); var je2 = parseFloat($("txt_je2").value.trim()); var je3 = parseFloat($("txt_je3").value.trim()); var je5 = parseFloat($("txt_je5").value.trim()); var hl1 = parseFloat($("txt_hl1").value.trim()); var hl2 = parseFloat($("txt_hl2").value.trim()); var hl3 = parseFloat($("txt_hl3").value.trim()); var hl5 = parseFloat($("txt_hl5").value.trim()); $("txt_je4").value = round2((je1 * hl1 + je2 * hl2 - je3 * hl3 - je5 * hl5), 2); } } function txt_je4_onblur() { if ($("txt_je4").value.trim() != "") { var je1 = parseFloat($("txt_je1").value.trim()); var je2 = parseFloat($("txt_je2").value.trim()); var je4 = parseFloat($("txt_je4").value.trim()); var je5 = parseFloat($("txt_je5").value.trim()); var hl1 = parseFloat($("txt_hl1").value.trim()); var hl2 = parseFloat($("txt_hl2").value.trim()); var hl3 = parseFloat($("txt_hl3").value.trim()); var hl4 = parseFloat($("txt_hl4").value.trim()); var hl5 = parseFloat($("txt_hl5").value.trim()); var bb3 = $("ddl_bb3").value.trim(); $("txt_je3").value = round2((je1 * hl1 + je2 * hl2 - je4 * hl4 - je5 * hl5), 2); if (bb3 == "USD") { $("txt_je3").value = Div((je1 * hl1 + je2 * hl2 - je4 * hl4 - je5 * hl5), hl3, 2); } } } function setAccess(handle) { if ($("h_isAccess").value.trim() == "0") { $("h_isAccess").value = "1"; document.getElementById('mygrid_recv_2').style.display = ""; if (handle.toString().trim() == "add") { initGrid2("add", "", ""); } else { initGrid2("edit", $("h_settlementid").value.trim(), $("h_billno").value.trim()); } } else if ($("h_isAccess").value.trim() == "1") { $("h_isAccess").value = "0"; document.getElementById('mygrid_recv_2').style.display = "none"; // var hl1 = parseFloat($("txt_hl1").value.trim()); var je1 = parseFloat($("txt_je1").value.trim()); var je2 = parseFloat($("txt_je2").value.trim()); var je3 = parseFloat($("txt_je3").value.trim()); var je4 = parseFloat($("txt_je4").value.trim()); var je5 = parseFloat($("h_je5").value.trim()); var hl1 = parseFloat($("txt_hl1").value.trim()); var hl2 = parseFloat($("txt_hl2").value.trim()); var hl3 = parseFloat($("txt_hl3").value.trim()); var hl4 = parseFloat($("txt_hl4").value.trim()); var hl5 = parseFloat($("txt_hl5").value.trim()); var bb3 = $("ddl_bb3").value.trim(); $("txt_je5").value = je5; $("txt_je3").value = round2((je1 * hl1 + je2 * hl2 - je4 * hl4 - je5 * hl5), 2); if (bb3 == "USD") { $("txt_je3").value = Div((je1 * hl1 + je2 * hl2 - je4 * hl4 - je5 * hl5), hl3, 2); } //$("ddl_bb5").value = "RMB"; //$("txt_hl5").value = "1.0000"; //$("txt_je5").value = "0.00"; } } function setSHOW() { if ($("h_isSHOW").value.trim() == "0") { $("h_isSHOW").value = "1"; document.getElementById('divSHOW').style.display = ""; initGrid3(); } else if ($("h_isSHOW").value.trim() == "1") { $("h_isSHOW").value = "0"; document.getElementById('divSHOW').style.display = "none"; } } //#region js计算函数 round2 = function (str, length) { var r2 = parseFloat(str).toFixed(8); var r1 = parseFloat(r2).toFixed(parseInt(length)); return r1; } //除法函数,用来得到精确的除法结果 //说明:javascript的除法结果会有误差,在两个浮点数相除的时候会比较明显。这个函数返回较为精确的除法结果。 //调用:accDiv(arg1,arg2) //返回值:arg1除以arg2的精确结果 function accDiv(arg1, arg2) { var t1 = 0, t2 = 0, r1, r2; try { t1 = arg1.toString().split(".")[1].length } catch (e) { } try { t2 = arg2.toString().split(".")[1].length } catch (e) { } with (Math) { r1 = Number(arg1.toString().replace(".", "")) r2 = Number(arg2.toString().replace(".", "")) return (r1 / r2) * pow(10, t2 - t1); } } //给Number类型增加一个div方法,调用起来更加方便。 Number.prototype.div = function (arg) { return accDiv(this, arg); } //乘法函数,用来得到精确的乘法结果 //说明:javascript的乘法结果会有误差,在两个浮点数相乘的时候会比较明显。这个函数返回较为精确的乘法结果。 //调用:accMul(arg1,arg2) //返回值:arg1乘以arg2的精确结果 function accMul(arg1, arg2) { var m = 0, s1 = arg1.toString(), s2 = arg2.toString(); try { m += s1.split(".")[1].length } catch (e) { } try { m += s2.split(".")[1].length } catch (e) { } return Number(s1.replace(".", "")) * Number(s2.replace(".", "")) / Math.pow(10, m) } //给Number类型增加一个mul方法,调用起来更加方便。 Number.prototype.mul = function (arg) { return accMul(arg, this); } //加法函数,用来得到精确的加法结果 //说明:javascript的加法结果会有误差,在两个浮点数相加的时候会比较明显。这个函数返回较为精确的加法结果。 //调用:accAdd(arg1,arg2) //返回值:arg1加上arg2的精确结果 function accAdd(arg1, arg2) { var r1, r2, m; try { r1 = arg1.toString().split(".")[1].length } catch (e) { r1 = 0 } try { r2 = arg2.toString().split(".")[1].length } catch (e) { r2 = 0 } m = Math.pow(10, Math.max(r1, r2)) return (arg1 * m + arg2 * m) / m } //给Number类型增加一个add方法,调用起来更加方便。 Number.prototype.add = function (arg) { return accAdd(arg, this); } //加 function Add(a, b, length) { if ((typeof (length) == undefined) || (length == null)) { length = 2; } var _r = parseFloat(a).add(parseFloat(b)).toFixed(parseInt(length)); return parseFloat(_r); } //减 function Cut(a, b, length) { if ((typeof (length) == undefined) || (length == null)) { length = 2; } var _r = parseFloat(a).add(parseFloat(0) - parseFloat(b)).toFixed(parseInt(length)); return parseFloat(_r); } //乘 function Mul(a, b, length) { if ((typeof (length) == undefined) || (length == null)) { length = 2; } var _r = parseFloat(a).mul(parseFloat(b)).toFixed(parseInt(length)); return parseFloat(_r); } //连乘 function Mul3(a, b, c, length) { if ((typeof (length) == undefined) || (length == null)) { length = 2; } var _r = (parseFloat(a).mul(parseFloat(b)).mul(parseFloat(c))).toFixed(parseInt(length)); return parseFloat(_r); } //除 function Div(a, b, length) { if ((typeof (length) == undefined) || (length == null)) { length = 2; } var _r = parseFloat(a).div(parseFloat(b)).toFixed(parseInt(length)); return parseFloat(_r); } //#endregion