用document.createelement+element.appendchild

解决方案 »

  1.   

    <script type="text/javascript">
    <!--
    var board = document.getElementById("board");
    var e = document.createElement("input");
    e.type = "radio"; //紧接着上一行写
    var obj = board.appendChild(e);
    obj.checked = true;
    //如下写法也是正确的:
    //e.checked = true;
    -->
    </script>
    ============
    找了一下资料,象上面那样添加一个input,但我要动态在后面追加多个input怎么呢?
    用innerHTML是象下面那样追加的,用createElement怎么加?
    document.getElementById("spanid").innerHTML+="<input name='text1' type='text' id='text1' value=''>";
      

  2.   

    <html>
    <head>
    </head>
    <body>
    <script language="javascript" type="text/javascript">
    function $()
    {
      getName("form1")[0].innerHTML+="<input name=\"subm\" type=\"submit\">";
    }
    function getName(name)
    {return document.getElementsByName(name);}
    </script>
    <form action="" method="get" name="form1">
    <input name="ass" type="text" onClick="$()">
    </form>
    </body>
    </html>
    注意的是form要放在body标签里(IE7.0\Firefox2.0)通过!
      

  3.   

    直接appendChild对象就行了,他会依次往后追加<script type="text/javascript">
    <!--
    var board = document.getElementById("board");
    for(var i=0;i<10;i++){
    var e = document.createElement("input");
    e.type = "text"
    e.setAttribute("name","input_"+i);//设置name属性
    board.appendChild(e);//将e追加到board最后一个节点后面
    }</script>
      

  4.   

    晚上再測試了,請問再一個一個刪除添加的input怎麼刪?
    我用nextSibling.removeNode(true)這樣的語法在ie裡可以刪除,但在ff裡不支持
      

  5.   

    var board = document.getElementById("board");
    var inputid = document.getElementById("input"+i);
    board.removeChild(inputid );
    這樣可以在ie裡刪除了,不知道ff可以不,晚上才能試
      

  6.   

    現在沒有FF,把在IE上寫的代碼放在這裡晚上再拿去FF上測試。<script type="text/javascript">
    <!--//
    var addi=0;
    function addElement(objid){
    addi+=1;
    var board = document.getElementById(objid);
    var e = document.createElement("input");
    e.type = "text"
    e.setAttribute("name","item[]");//设置name属性
    e.setAttribute("id","item"+addi);
    e.setAttribute("size","38");
    board.appendChild(e);//将e追加到board最后一个节点后面
    }function removeElement(objid){
    var board = document.getElementById(objid);
    var removeOBJ = document.getElementById("item"+addi);
    if(addi>=0){
      board.removeChild(removeOBJ);
      addi-=1;
    }
    }
    //-->
    </script>
      

  7.   

    因为hjx398(娱乐主角) 的可以,测试了hjx398(娱乐主角) 的代码,
    发现不是innerHTML的问题,上面的createElement也没问题的,
    问题出在form的位置,因为form里面有表格,
    这样放在表格里面就不行:
    <table><form><tr><td></td></tr></form></table>
    这样放在表格外面就可以传值了:
    <form><table><tr><td></td></tr></table></form>