你说的不清楚,但我觉得if (!document.addform.value.checked)有问题,应该是
if(document.addform.checked)

解决方案 »

  1.   

    if(document.addform.checked)把里面的!去掉的话变成负数了,晕!!!
      

  2.   

    问题根源在:程序没有找到checkbox。不信你就alert(document.addform.value.name);
    解决:
    1、每个checkbox给唯一的一个名字或者ID:
    <checkbox name="ckb01" onclick="add(this,30)">
    2、
    <script language="JavaScript">
    var num1=0;
    function add(ckb,num2){
      if (!ckb.checked){
        document.count.value += num2;
      }
      else{
        document.count.value -= num2;
      }
    }
    </script>
      

  3.   

    试一下我这个吧.
    <input type="checkbox" name="chk1" value="10">10
    <input type="checkbox" name="chk1" value="20">20
    <script>
    var total = 0;
    function chkadd()
    {
        if(this.checked)

        window.total+=Number(this.value);
    }
    else
    {
        window.total-=Number(this.value);
    }
    alert(window.total)
    }
    var chk = document.all.chk1;
    for(var i=0;i<chk.length;i++)
    {
        chk[i].onclick=chkadd;
    }
    </script>
      

  4.   

    <script language="JavaScript">
    var num1=0;
    function add(obj,num2)
    {
     if (obj.checked){
        num1=num1+num2;
        document.formname.count.value=num1;
         }
    else{
        num1=num1-num2;
        document.formname.count.value=num1;
         }
    }
    </script>
    在checkbox中onclick调用函数
    onclick="add(this,num2);"
      

  5.   

    偶这个测试可以啊.<input type="checkbox" name="chk1" value="10">10
    <input type="checkbox" name="chk1" value="20">20
    <script>
    var total = 0;
    function chkadd()
    {
        if(this.checked)

        window.total+=Number(this.value);
    }
    else
    {
        window.total-=Number(this.value);
    }
    alert(window.total)
    }
    var chk = document.all.chk1;
    for(var i=0;i<chk.length;i++)
    {
        chk[i].onclick=chkadd;
    }
    </script>
      

  6.   

    ttkkyy() 你的对了,谢了啊。哈哈~~