这是要取值的复选框:
<form name="form1" method="post" action="">
  <input type="checkbox" name="checkbox" value="1">
  <input type="checkbox" name="checkbox" value="2">
  <input type="checkbox" name="checkbox" value="3">
</form>点一个就列一个值到这个文本框里:
比如点第一个是:1
点第二个的时候变成:1,2
第三个的时候:1,2,3
点取消的时候还要能减少
如取消2,则文本框中变为1,3
<input name="aaa" type="text">

解决方案 »

  1.   

    <form name="form1" method="post" action="">
    <input type="checkbox" name="checkbox" value="1" onclick="clickcheck(this);">
    <input type="checkbox" name="checkbox" value="2" onclick="clickcheck(this);">
    <input type="checkbox" name="checkbox" value="3" onclick="clickcheck(this);">
    </form><script language="javascript">
    Array.prototype.Remove = function(value){for(var i=0,l=this.length;i<l;i++)if(this[i]==value){return this.splice(i,1);}}
    var checkvalues = new Array();
    function clickcheck(obj)
    {
    if(obj.checked)
    {
    checkvalues.push(obj.value);
    }
    else
    {
    checkvalues.Remove(obj.value);
    }
    checkvalues.sort();
    alert(checkvalues.join(","));
    }
    </script>
      

  2.   

    每个checkbox里面都有value,点一下就触发onclick激活一个函数,在函数里面判断该复选框是否被选中,如果是选中那么在"aaa"里面加上,checkbox的值,如果是取消,那么把,checkbox的值替换为空,最后就会得到,1,2,5,112,345这样的值了,然后该怎么处理这些就看楼主的了
      

  3.   

    var a = document.getElementsByName("id");
       if(document.form1.all("checkbox").checked==true)
       {
          for (var i=0; i<a.length; i++)
             if (a[i].type == "checkbox") a[i].checked = true;
       }
       else
       {
          for (var i=0; i<a.length; i++)
             if (a[i].type == "checkbox") a[i].checked = false;
       }
    结果为字符串集
    如需改数组形式,需循环赋值