<input name="test[0]" ...>
<input name="test[1]" ...>
<input name="test[2]" ...>
<input name="test[3]" ...>请问,怎么得到有几个这样的input?每个input应该怎么样取到?
document.getElementsByName("test").length不行。
谢谢

解决方案 »

  1.   

    var inputs=document.getElementsByTagName("input"),len=inputs.length,res=[];
    for(var i=0,cur;i<len;i++){
        cur=inputs[i];
        if(/test\[\d+\]/i.test(cur.name))
            res[res.length]=cur;
    }
    alert(res.length)
      

  2.   

    这种情况,最好这样子
    <input id="test[0]" name="test"...> 
    <input id="test[1]" name="test"...> 
    <input id="test[2]" name="test"...> 
    <input id="test[3]" name="test"...> id保证唯一性,name可以是相同的,这样你用document.getElementsByName("test")就可以取到这么一组input了
      

  3.   

    <input name="test[0]" value="a"> 
    <input name="test[1]" value="b"> 
    <input name="test[2]" value="c"> 
    <input name="test[3]" value="d"> 
    <script>
        for(var i=0;i<100;i++){
            if(document.getElementsByName("test["+i+"]").length>0){
                alert(document.getElementsByName("test["+i+"]")[0].value);
            }else{
                i=100;
            }
        }
    </script>
      

  4.   

    if(/test\[\d+\]/i.test(cur.name))
    请问这个.test是什么意思?前面是正则表达式,明白了,后面cur.name是input的名字也知道,就是不知道.test是什么意思?
      

  5.   

    var reg=new RegExp();
    reg.pattern=(/test\[\d+\]/i;
    reg.test(cur.name)
      

  6.   

    再问一下
    <input name="ShanChuTwo" id="ShanChuTwo" type="checkbox" checked="checked" value="1" />上面这个,如果没有checked="checked" 的话,页面submit时,就不会有$_POST["ShanChuTwo"],请问,怎么做,让它没有checked="checked"时,也能提交上去?原因是:我要用jquery动态地添加一些input,如果上面的input没有checked="checked",动态添加的input的会把上面的input给代替了
      

  7.   

    .test原来是判断是不是跟正则表达式匹配啊
      

  8.   

    jol_boy:
    <input id="test[0]" name="test"...> 
    <input id="test[1]" name="test"...> 
    <input id="test[2]" name="test"...> 
    <input id="test[3]" name="test"...> 这种方法,等页面提交后,后面的值会把前面的值给冲掉,我想要所有的值