⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 form.js

📁 通达2008ADV破解补丁...........
💻 JS
📖 第 1 页 / 共 2 页
字号:
function tb_addnew(lv_tb_id,read_only,row_value,sum,cal)
{
  var mytable=document.getElementById(lv_tb_id);
  var size_array=mytable.getAttribute("FormData").split("`");
  var row_value_array=row_value.split("`");
  var sum_flag=0;
  if(sum!='')
  {
    var sum_array=sum.split("`");
    for(i=0;i<sum_array.length;i++)
    {
      if(sum_array[i]==1) 
      {
        sum_flag=1;
        break;
      }
    }
  }
  if(cal!='')
    var cal_array=cal.split("`");

  maxcell=mytable.rows[0].cells.length;
  if(mytable.rows.length==1 || sum_flag==0)
    mynewrow = mytable.insertRow(-1);
  else
    mynewrow = mytable.insertRow(mytable.rows.length-1);
  for(i=0;i<maxcell-1;i++)
  {
    mynewcell=mynewrow.insertCell(-1);
    cell_html="<input type=text ";
    cell_html+=" size="+ size_array[i];
    if(row_value!="")
       cell_html+=" value=\""+ row_value_array[i]+"\"";
    if(read_only || (cal_array && cal_array[i]!=''))
       cell_html+=" readonly class=BigStatic";
    else
    	 cell_html+=" class=BigInput";
    cell_html+=">";
    mynewcell.innerHTML=cell_html;
  }

  mynewcell=mynewrow.insertCell(-1);
  if(!read_only)
     mynewcell.innerHTML="<input type=button value=删除 onclick=tb_delete('"+lv_tb_id+"',this)>";
  if(sum_flag==1 && mytable.rows.length==2)
    tb_add_sum(lv_tb_id,sum,sum_flag);
}

function tb_add_sum(lv_tb_id,sum,sum_flag)
{
  var mytable=document.getElementById(lv_tb_id);
  var size_array=mytable.FormData.split("`");
  var sum_array=sum.split("`");
  var maxcell=mytable.rows[0].cells.length;
  //增加合计
  sumrow=mytable.insertRow(-1);
  sumrow.setAttribute('id',lv_tb_id+'_sum');
  for(i=0;i<maxcell-1;i++)
  {
    sumcell=sumrow.insertCell(-1);
    if(sum_array && sum_array[i]==1)
    {
      cell_html="<input type=text style='border:none;background:#ffffff;text-align:right;' size="+size_array[i]+" readonly class=BigStatic>";
      sumcell.innerHTML=cell_html;
    }
  }
  sumcell=sumrow.insertCell(-1); 
  sumcell.innerHTML="<input type=button value=合计 onclick=tb_sum('"+lv_tb_id+"','"+sum+"')>";
  
  setInterval("tb_sum('"+lv_tb_id+"','"+sum+"')",2000);
}

function tb_delete(lv_tb_id,del_btn)
{
  var mytable=document.getElementById(lv_tb_id);
  mytable.deleteRow(del_btn.parentNode.parentNode.rowIndex);
  if(mytable.rows.length==2 && document.all(lv_tb_id+"_sum"))
    mytable.deleteRow(1);
}

function tb_output(lv_tb_id)
{
  var data_str="";
  var row_length=document.getElementById(lv_tb_id).rows.length;
  if(document.getElementById(lv_tb_id+'_sum'))
    row_length--;
  for (i=1; i < row_length; i++)
  {
      for (j=0; j < document.getElementById(lv_tb_id).rows[i].cells.length-1; j++)
      {
          data_str+=document.getElementById(lv_tb_id).rows[i].cells[j].firstChild.value+"`";
      }
      data_str+="\n";
  }

  lv_id="DATA_"+lv_tb_id.substr(3);
  eval("document.form1."+lv_id+".value=data_str");
}

function LV_Submit()
{
  var lv_tb_id="";
  var tables=document.getElementsByTagName("table");
  for (lv_i=0;lv_i<tables.length; lv_i++)
  {
       if(tables[lv_i].className=="LIST_VIEW")
       {
          lv_tb_id=tables[lv_i].id;
          tb_output(lv_tb_id);
       }
  }
}
function tb_sum(lv_tb_id,sum)
{
  var mytable=document.getElementById(lv_tb_id);
  if(mytable.rows.length==1) return;
  var sumrow=mytable.rows[mytable.rows.length-1];
  var sum_array=sum.split("`");
  for(i=0;i<sum_array.length;i++)
  {
    var sum_value=0;
    if(sum_array[i]==1)
    {
      for(j=1;j<mytable.rows.length-1;j++)
      {
        sum_value+=parseFloat(mytable.rows[j].cells[i].firstChild.value==''?0:mytable.rows[j].cells[i].firstChild.value);
      }
      if(isNaN(sum_value))
        sumrow.cells[i].firstChild.value="0";
      else
        sumrow.cells[i].firstChild.value=Math.round(sum_value*10000)/10000;
    }
  }
}

function tb_cal(lv_tb_id,cal)
{
  var mytable=document.getElementById(lv_tb_id);
  if(mytable.rows.length==1) return;
  if(cal)
  {
    var cal_array=cal.split("`");
    for(i=1;i<mytable.rows.length-1;i++)
    {
      for(k=0;k<cal_array.length-1;k++)
      {
        var cal_str=cal_array[k];
        if(cal_str=="")
          continue;
        for(j=0;j<mytable.rows[i].cells.length-1;j++)
        {
          cell_value=parseFloat(mytable.rows[i].cells[j].firstChild.value);
          cal_str=cal_str.replace("["+(j+1)+"]",cell_value);
        }
        mytable.rows[i].cells[k].firstChild.value=isNaN(eval(cal_str))?0:Math.round(parseFloat(eval(cal_str))*10000)/10000;
      }
    }
  }
}

function convertCurrency(currencyDigits) 
{
  // Constants:
  var MAXIMUM_NUMBER = 99999999999.99;
  // Predefine the radix characters and currency symbols for output:
  var CN_ZERO = "零";
  var CN_ONE = "壹";
  var CN_TWO = "贰";
  var CN_THREE = "叁";
  var CN_FOUR = "肆";
  var CN_FIVE = "伍";
  var CN_SIX = "陆";
  var CN_SEVEN = "柒";
  var CN_EIGHT = "捌";
  var CN_NINE = "玖";
  var CN_TEN = "拾";
  var CN_HUNDRED = "佰";
  var CN_THOUSAND = "仟";
  var CN_TEN_THOUSAND = "万";
  var CN_HUNDRED_MILLION = "亿";
  var CN_DOLLAR = "元";
  var CN_TEN_CENT = "角";
  var CN_CENT = "分";
  var CN_INTEGER = "整";
  
  // Variables:
  var integral; // Represent integral part of digit number.
  var decimal; // Represent decimal part of digit number.
  var outputCharacters; // The output result.
  var parts;
  var digits, radices, bigRadices, decimals;
  var zeroCount;
  var i, p, d;
  var quotient, modulus;
  
  // Validate input string:
  currencyDigits = currencyDigits.toString();
  if (currencyDigits == "") {
     return "";
  }
  if (currencyDigits.match(/[^,.\d]/) != null) {
     return "";
  }
  if ((currencyDigits).match(/^((\d{1,3}(,\d{3})*(.((\d{3},)*\d{1,3}))?)|(\d+(.\d+)?))$/) == null) {
     return "";
  }
  
  // Normalize the format of input digits:
  currencyDigits = currencyDigits.replace(/,/g, ""); // Remove comma delimiters.
  currencyDigits = currencyDigits.replace(/^0+/, ""); // Trim zeros at the beginning.
  // Assert the number is not greater than the maximum number.
  if (Number(currencyDigits) > MAXIMUM_NUMBER) {
     return "";
  }

  // Process the coversion from currency digits to characters:
  // Separate integral and decimal parts before processing coversion:
  parts = currencyDigits.split(".");
  if (parts.length > 1) {
     integral = parts[0];
     decimal = parts[1];
     // Cut down redundant decimal digits that are after the second.
     decimal = decimal.substr(0, 2);
  }
  else {
     integral = parts[0];
     decimal = "";
  }
  // Prepare the characters corresponding to the digits:
  digits = new Array(CN_ZERO, CN_ONE, CN_TWO, CN_THREE, CN_FOUR, CN_FIVE, CN_SIX, CN_SEVEN, CN_EIGHT, CN_NINE);
  radices = new Array("", CN_TEN, CN_HUNDRED, CN_THOUSAND);
  bigRadices = new Array("", CN_TEN_THOUSAND, CN_HUNDRED_MILLION);
  decimals = new Array(CN_TEN_CENT, CN_CENT);
  // Start processing:
  outputCharacters = "";
  // Process integral part if it is larger than 0:
  if (Number(integral) > 0) {
     zeroCount = 0;
     for (i = 0; i < integral.length; i++) {
         p = integral.length - i - 1;
         d = integral.substr(i, 1);
         quotient = p / 4;
         modulus = p % 4;
         if (d == "0") {
            zeroCount++;
         }
         else 
         {
            if (zeroCount > 0)
            {
               outputCharacters += digits[0];
            }
            zeroCount = 0;
            outputCharacters += digits[Number(d)] + radices[modulus];
         }
         if (modulus == 0 && zeroCount < 4) {
            outputCharacters += bigRadices[quotient];
         }
     }
     outputCharacters += CN_DOLLAR;

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -