var obj = document.getElementById("qqww"); //根目录var InputNum = 1;function add()
{  
    //创建文本框  
    nInput = document.createElement("input");
    InputID = "input" + InputNum;    nInput.setAttribute("name","qq[]");    nInput.setAttribute("id", InputID);
    nInput.setAttribute("value", "");
    nInput.setAttribute("size", 40);
    obj.appendChild(nInput);
    
    InputNum++;
}
为什么我用这种方法创建的文本框,不能用
qq = document.getElementsByName("qq[]");
来得到?我得到的是空值……(ById也不行),我查看页面源文件,根本没有
<input type="text" name="qq[]" id="input1">这样的HTML代码?
要怎么解决呢
请不吝赐教……

解决方案 »

  1.   


    add函数调用了吗
    (function(){
    function add()
    {  
        //创建文本框  
        nInput = document.createElement("input");
        InputID = "input" + InputNum;    nInput.setAttribute("name","qq[]");    nInput.setAttribute("id", InputID);
        nInput.setAttribute("value", "");
        nInput.setAttribute("size", 40);
        obj.appendChild(nInput);
        
        InputNum++;
    }})()
      

  2.   


    (function(){
        //创建文本框  
        nInput = document.createElement("input");
        InputID = "input" + InputNum;
        nInput.setAttribute("name","qq[]");
        nInput.setAttribute("id", InputID);
        nInput.setAttribute("value", "");
        nInput.setAttribute("size", 40);
        obj.appendChild(nInput);
        InputNum++;
    })()
      

  3.   

    你这样 var input = "<input id=\""+InputID+"\" name=\"qq[]\" value=\"\" size=\"40\">"
    然后 document.getElementById("比如DIV的id").innerHTML = input ; 一定可以
      

  4.   


    这里的是动态创建dom的,所以才看不到
    用firebug就可以看到var InputNum = 1;
    function add()
    {  
        //创建文本框  
        nInput = document.createElement("input");
        InputID = "input" + InputNum;    nInput.setAttribute("name","qq[]");    nInput.setAttribute("id", InputID);
        nInput.setAttribute("value", "");
        nInput.setAttribute("size", 40);
        var obj = document.getElementById("qqww"); //根目录
        obj.appendChild(nInput);
        
        InputNum++;
    }function get() {
       for (var i = 1; i <= InputNum;i++) {
           alert(document.getElementById("input"+ i));//因为input的id=input + InputNum;应该是input1、input2这样的
       }
    }
      

  5.   


    function get() {
       for (var i = 1; i <= InputNum;i++) {
           alert(document.getElementById("input"+ i).value);//因为input的id=input + InputNum;应该是input1、input2这样的
       }
    }