<script type="text/javascript">
function sellClick(sId){
var pri ="";
var cb = document.getElementsByName("all");
var sid = document.getElementById("bb"+sId).innerHTML;
         for(i=0;i<cb.length;i++){
      if(cb[i].checked){
  pri +=sid+("/");
  }
   }
alert(pri);
}
</script><table width="100%" cellpadding="0" cellspacing="0" bgcolor="#c1ebff">
   <tr style="background-color:#D1EEEE;">
<td width="3%" height="22"></td>
<td width="25%">商品</td>
<td width="8%">单价</td>
         <td width="1%"></td>
<td width="5%">数量</td>
         <td width="1%"></td>
<td width="8%">金额</td>
<td width="8%">基本操作</td>
  </tr>
  <tr>
         <td height="20"><input type="checkbox" name="all" onclick="sellClick('1')"/></td>
         <td>诺基亚</td>
         <td><input type="text" name="price" id="price" value="3000.00" /></td>
         <td>×</td>
<td><input type="text" name="quantity" id="quantity" value="2"/></td>
         <td>=</td>
<td><span id="bb1" style="color: #FFB90F;font-weight: bold;">6000.00</span></td>
  </tr>
  <tr>
         <td height="20"><input type="checkbox" name="all" onclick="sellClick('2')"/></td>
         <td>三星</td>
         <td><input type="text" name="price" id="price" value="2500"/></td>
         <td>×</td>
<td><input type="text" name="quantity" id="quantity" value="2"/></td>
         <td>=</td>
<td><span id="bb2" style="color: #FFB90F;font-weight: bold;">5000.00</span></td>
  </tr>
</table>
这个js的运行的结果是 当我复选框选中第一行的时候 它得到的是id为“bb1”的值为6000.00/,然后我再选中第二行的时候,它就是循环了两次 得到的是id为“bb2”的值为5000.00/5000.00/。
而我想要得结果是: 当我选中第一个复选框的时候 得到id为“bb1”的值为6000.00/,然后我复选框再选中第二行的时候,得到的id为“bb1”和“bb2”的值为6000.00/2500.00/
望大家帮帮忙 在这里先谢谢各位了。

解决方案 »

  1.   

    错了 我修改一下
    而我想要得结果是: 当我选中第一个复选框的时候 得到id为“bb1”的值为6000.00/,然后我复选框再选中第二行的时候,得到的id为“bb1”和“bb2”的值为6000.00/5000.00/
      

  2.   

    var sid = document.getElementById("bb"+sId).innerHTML;先看看你传的SID再看看这句话。。
      

  3.   

    噢噢  这点function sellClick(sId) 是我的失误 ,这一点就错了 请问有没有其他实现功能的方法
      

  4.   


    <script type="text/javascript">
    function sellClick(){
    var cb = document.getElementsByName("all");
    var ids = "", ps = "";
    for (var i = 0, len = cb.length;i < len; i++) {
    if (cb[i].checked){
    ids += 'bb' + cb[i].value + ',';
    ps += document.getElementById('bb' + cb[i].value).innerHTML + '/';
    }
    }
    alert(ids + ' : ' + ps);
    }
    </script><table width="100%" cellpadding="0" cellspacing="0" bgcolor="#c1ebff">
      <tr style="background-color:#D1EEEE;">
    <td width="3%" height="22"></td>
    <td width="25%">商品</td>
    <td width="8%">单价</td>
      <td width="1%"></td>
    <td width="5%">数量</td>
      <td width="1%"></td>
    <td width="8%">金额</td>
    <td width="8%">基本操作</td>
      </tr>
      <tr>
      <td height="20"><input type="checkbox" name="all" value="1" onclick="sellClick()"/></td>
      <td>诺基亚</td>
      <td><input type="text" name="price" id="price" value="3000.00" /></td>
      <td>×</td>
    <td><input type="text" name="quantity" id="quantity" value="2"/></td>
      <td>=</td>
    <td><span id="bb1" style="color: #FFB90F;font-weight: bold;">6000.00</span></td>
      </tr>
      <tr>
      <td height="20"><input type="checkbox" name="all" value="2" onclick="sellClick()"/></td>
      <td>三星</td>
      <td><input type="text" name="price" id="price" value="2500"/></td>
      <td>×</td>
    <td><input type="text" name="quantity" id="quantity" value="2"/></td>
      <td>=</td>
    <td><span id="bb2" style="color: #FFB90F;font-weight: bold;">5000.00</span></td>
      </tr>
    </table>具体自己再调整