<html>
<head>
<title>销售订单设置</title>

<script type="text/javascript">

var i=0;//行的id   
var num;  
var goodname;  
var goodnumber;   
var goodprice; 
var goodamount; 
var list= new Array();   
var numList=new Array();  
var flag=true;  

function addRow(){//添加行  
var a =0;
var table=document.getElementById("table");  
var newbody = document.getElementById("newbody");
var bodylen = newbody.rows.length;
var length=table.rows.length;   
var tr=document.createElement("tr");   
tr.id=++i;  
  //alert("第一次"+bodylen);
goodid="";
goodname="";
goodnumber=""; 
goodprice="";
goodamount="";

//不用文本框下面取不出来。 (因遍历的方式需要不带文本框)  
var td0=document.createElement("td");  
td0.innerHTML="<input type=\"hidden\" id=\"goodid"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodid\"/>"+
"<input type=\"text\"  title=\"单击选择\" id=\"goodname"+bodylen+"\" class=\"txtInput searchInput\" value=\"\" name=\"goodname\" "+
" onclick=\'view(\"goodid"+bodylen+"\",\"goodname"+bodylen+"\",\"unitname"+bodylen+"\",\"goodnumber"+bodylen+"\");\' dataType=\"Limit\" min=\"1\" max=\"20\" "+
" msg=\"不能为空!\" readonly/>";
tr.appendChild(td0);   

var td1=document.createElement("td");
td1.innerHTML="<input type=\"text\" id=\"unitname"+bodylen+"\" size=\"10\" class=\"form_text\" value=\"\" name=\"unitname\" readonly/>";  
tr.appendChild(td1);

var td2=document.createElement("td");
td2.innerHTML="<input type=\"text\" id=\"goodspec"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodspec\" />";  
tr.appendChild(td2);

var td3=document.createElement("td");
td3.innerHTML="<input type=\"text\" id=\"goodnumber"+bodylen+"\" size=\"10\" class=\"form_text\" value=\"\" name=\"goodnumber\" "+
" onkeyup=\'donum();\' dataType=\"Currency\" msg=\"请输入正确数字!\"/>";  
tr.appendChild(td3);
       
var td4=document.createElement("td");  
    td4.innerHTML="<input type=\"text\" id=\"goodprice"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodprice\" onkeyup=\'domoney(\"goodnumber"+bodylen+"\",\"goodprice"+bodylen+"\",\"goodamount"+bodylen+"\");donum(\"goodnumber"+bodylen+"\");\' "+
     " dataType=\"Require\" msg=\"单价不能为空!\"/>";     
    tr.appendChild(td4);
    
    var td5=document.createElement("td");  
    td5.innerHTML="<input type=\"text\" id=\"goodamount"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodamount\" dataType=\"Currency\" msg=\"请输入正确金额!\"/>";     
    tr.appendChild(td5);
    
    var td6=document.createElement("td");   
    td6.innerHTML="<input type=\"button\" class=\"common_button\" value=\"删除\" onclick=\"delrow(this.parentElement.parentElement,this.parentElement.parentElement.id)\"/>";     
    tr.appendChild(td6); 
      
    if(flag==true){
    document.getElementById("newbody").appendChild (tr);
    }else{   
    i--;   
    }
}   function delrow(src,index){   
    var tr=document.getElementById(index);   
    tr.parentNode.removeChild(tr);   
    delData(index);   
}function delData(rid){ list[rid]=""; }


function domoney(value1,value2,value3){
if(document.getElementById(value1).value != null && document.getElementById(value1).value !=''){
var numberValue = document.getElementById(value1).value;
 
  if(document.getElementById(value2).value != null && document.getElementById(value2).value !=''){
var priceValue = parseFloat(document.getElementById(value2).value);
document.getElementById(value3).value = numberValue * priceValue;
}
  } }

function donum(){
var newbody = document.getElementById("newbody");
var bodylen = newbody.rows.length; for(var i=1; i<=bodylen;i++){
alert(i);
//if(document.getElementById("goodnumber"+bodylen).value != null && document.getElementById("goodnumber"+bodylen).value !=''){
//var allnum += document.getElementById("goodnumber"+bodylen).value;
//}
}

//document.getElementById("allNum").value = allnum;
 
}


function load(){
for(var i =0;i<1;i++){
addRow();
}
}

</script>
<style>
.inputText {
border-top: 0px;
border-left: 0px;
border-right: 0px;
border-bottom: 1px solid gray;
}</style>
</head>
<base target="_self">
<body style="margin: 10px;" onload="load();">
<form name="operateForm" class="notPrint" method="post">
<table border="0" cellpadding="0" cellspacing="0" class="formRegion form_body"
width="100%">
<tr>
<td class="form_head" width="100%" colspan="6">
销售订单设置
</td>
</tr>


</table>
<table id="table" width="100%" border="0" cellpadding="0"
cellspacing="1" class="formRegion form_body">
<tr align="right" class="tableHeader ">
<td width="10%" class="dg_headerstyle">
<div align="center">
物品名称
</div>
</td>
<td width="5%" class="dg_headerstyle">
<div align="center">
单位
</div>
</td>
<td width="10%" class="dg_headerstyle">
<div align="center">
规格
</div>
</td>
<td width="5%" class="dg_headerstyle">
<div align="center">
数量
</div>
</td>
<td width="10%" class="dg_headerstyle">
<div align="center">
单价
</div>
</td>
<td width="10%" class="dg_headerstyle">
<div align="center">
总额
</div>
</td>
<td width="8%" class="dg_headerstyle">
操作
</td>
</tr>
<tr class="whitebg" onMouseOver="mouseOverRow(this)"
onMouseOut="mouseOutRow(this)" onClick="mouseClickRow(this)"
onselectstart="return true">
<tbody id="newbody"></tbody>
</tr>
</table>

<table border="0" cellpadding="0" cellspacing="0" width="100%">
<tr>
<td class="form_foot_left">
&nbsp;
</td>
<td class="form_foot_center">
已售出<input type="text" class="inputText" id="allNum" value="0">样商品,共
<font color="red" size="3">
<input type="text" class="inputText" id="allMon" value="0">
</font>元
<input type="button" onClick="addRow()" class="common_button"
value="新增" />

</td>
<td class="form_foot_right">

&nbsp;
</td>
</tr>
</table>
</form>
</body>
</html>我想实现新增一条记录的时候累加数量到下面的总数量里面,是用document.getElementById("goodnumber"+bodylen).value来获取的,但是一直都不行不知道什么问题想要累加执行的js方法是donum(),有没有有经验的朋友帮忙看下。。先谢了。。代码可以直接复制到html文件里面可以执行。。

解决方案 »

  1.   

    获取总共几样商品的JS我已经给你改好了,总价格你就自己算吧:<html>
    <head>
    <title>销售订单设置</title><script type="text/javascript">var i=0;//行的id   
    var num;   
    var goodname;   
    var goodnumber;   
    var goodprice;  
    var goodamount;  
    var list= new Array();   
    var numList=new Array();   
    var flag=true;   function addRow(){//添加行   
    var a =0;
    var table=document.getElementById("table");   
    var newbody = document.getElementById("newbody");
    var bodylen = newbody.rows.length;
    var length=table.rows.length;   
    var tr=document.createElement("tr");   
    tr.id="goodnumber"+(++i);   
      //alert("第一次"+bodylen);
    goodid="";
    goodname="";
    goodnumber="";  
    goodprice="";
    goodamount="";//不用文本框下面取不出来。 (因遍历的方式需要不带文本框)   
    var td0=document.createElement("td");   
    td0.innerHTML="<input type=\"hidden\" id=\"goodid"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodid\"/>"+
    "<input type=\"text\" title=\"单击选择\" id=\"goodname"+bodylen+"\" class=\"txtInput searchInput\" value=\"\" name=\"goodname\" "+
    " onclick=\'view(\"goodid"+bodylen+"\",\"goodname"+bodylen+"\",\"unitname"+bodylen+"\",\"goodnumber"+bodylen+"\");\' dataType=\"Limit\" min=\"1\" max=\"20\" "+
    " msg=\"不能为空!\" readonly/>";
    tr.appendChild(td0);   var td1=document.createElement("td");
    td1.innerHTML="<input type=\"text\" id=\"unitname"+bodylen+"\" size=\"10\" class=\"form_text\" value=\"\" name=\"unitname\" readonly/>";   
    tr.appendChild(td1);var td2=document.createElement("td");
    td2.innerHTML="<input type=\"text\" id=\"goodspec"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodspec\" />";   
    tr.appendChild(td2);var td3=document.createElement("td");
    td3.innerHTML="<input type=\"text\" id=\"goodnumber"+bodylen+"\" size=\"10\" class=\"form_text\" value=\"\" name=\"goodnumber\" "+
    " onkeyup=\'donum();\' dataType=\"Currency\" msg=\"请输入正确数字!\"/>";   
    tr.appendChild(td3);
        
    var td4=document.createElement("td");   
      td4.innerHTML="<input type=\"text\" id=\"goodprice"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodprice\" onkeyup=\'domoney(\"goodnumber"+bodylen+"\",\"goodprice"+bodylen+"\",\"goodamount"+bodylen+"\");donum(\"goodnumber"+bodylen+"\");\' "+
      " dataType=\"Require\" msg=\"单价不能为空!\"/>";      
      tr.appendChild(td4);
        
      var td5=document.createElement("td");   
      td5.innerHTML="<input type=\"text\" id=\"goodamount"+bodylen+"\" class=\"form_text\" value=\"\" name=\"goodamount\" dataType=\"Currency\" msg=\"请输入正确金额!\"/>";      
      tr.appendChild(td5);
        
      var td6=document.createElement("td");   
      td6.innerHTML="<input type=\"button\" class=\"common_button\" value=\"删除\" onclick=\"delrow(this.parentElement.parentElement,this.parentElement.parentElement.id)\"/>";      
      tr.appendChild(td6);  
        
      if(flag==true){
      document.getElementById("newbody").appendChild (tr);
      }else{   
      i--;   
      }
    }   function delrow(src,index){   
      var tr=document.getElementById(index);   
      tr.parentNode.removeChild(tr);   
      delData(index);   
    }function delData(rid){ list[rid]=""; }
    function domoney(value1,value2,value3){
    if(document.getElementById(value1).value != null && document.getElementById(value1).value !=''){
    var numberValue = document.getElementById(value1).value;if(document.getElementById(value2).value != null && document.getElementById(value2).value !=''){
    var priceValue = parseFloat(document.getElementById(value2).value);
    document.getElementById(value3).value = numberValue * priceValue;
    }
    }}function donum(){
    var newbody = document.getElementById("newbody");
    var bodylen = newbody.rows.length;
    var allnum;
    for(var i=1,allnum=0; i<=bodylen;i++){
    alert(i);
    if(document.getElementById("goodnumber"+i).children[3].children[0].value != null &&document.getElementById("goodnumber"+i).children[3].children[0].value !=''){
    var allnum = allnum+parseInt(document.getElementById("goodnumber"+i).children[3].children[0].value);
    }
    }document.getElementById("allNum").value = allnum;}
    function load(){
    for(var i =0;i<1;i++){
    addRow();
    }
    }</script>
    <style>
    .inputText {
    border-top: 0px;
    border-left: 0px;
    border-right: 0px;
    border-bottom: 1px solid gray;
    }</style>
    </head>
    <base target="_self">
    <body style="margin: 10px;" onload="load();">
    <form name="operateForm" class="notPrint" method="post">
    <table border="0" cellpadding="0" cellspacing="0" class="formRegion form_body"
    width="100%">
    <tr>
    <td class="form_head" width="100%" colspan="6">
    销售订单设置
    </td>
    </tr>
    </table>
    <table id="table" width="100%" border="0" cellpadding="0"
    cellspacing="1" class="formRegion form_body">
    <tr align="right" class="tableHeader ">
    <td width="10%" class="dg_headerstyle">
    <div align="center">
    物品名称
    </div>
    </td>
    <td width="5%" class="dg_headerstyle">
    <div align="center">
    单位
    </div>
    </td>
    <td width="10%" class="dg_headerstyle">
    <div align="center">
    规格
    </div>
    </td>
    <td width="5%" class="dg_headerstyle">
    <div align="center">
    数量
    </div>
    </td>
    <td width="10%" class="dg_headerstyle">
    <div align="center">
    单价
    </div>
    </td>
    <td width="10%" class="dg_headerstyle">
    <div align="center">
    总额
    </div>
    </td>
    <td width="8%" class="dg_headerstyle">
    操作
    </td>
    </tr>
    <tr class="whitebg" onMouseOver="mouseOverRow(this)"
    onMouseOut="mouseOutRow(this)" onClick="mouseClickRow(this)"
    onselectstart="return true">
    <tbody id="newbody"></tbody>
    </tr>
    </table><table border="0" cellpadding="0" cellspacing="0" width="100%">
    <tr>
    <td class="form_foot_left">
    &nbsp;
    </td>
    <td class="form_foot_center">
    已售出<input type="text" class="inputText" id="allNum" value="0">样商品,共
    <font color="red" size="3">
    <input type="text" class="inputText" id="allMon" value="0">
    </font>元
    <input type="button" onClick="addRow()" class="common_button"
    value="新增" /></td>
    <td class="form_foot_right">&nbsp;
    </td>
    </tr>
    </table>
    </form>
    </body>
    </html>
      

  2.   

    能不能麻烦你解释下修改的  tr.id="goodnumber"+(++i);  这个是什么意思??如果我要做金额的话需要什么改变吗??