如何将参数从javascript发送到html表单

时间:2014-01-16 16:34:37

标签: javascript html

我花了很多时间搜索这类问题,但没有找到合适的答案。我想要的是从java脚本获取文本名<input type='text' name="qname">并以html格式发送。有可能吗?我的压力在于这一部分。 代码:

<html>
<!-- skipped part-->
 <script type="text/javascript" defer="defer">
    function create()
    {
        var newDiv = document.createElement('div');
        var divId = "someId";
        newDiv.id = divId;
        var output = "<table id='e' border><tr><td><input type='text' name="qname"></td><td><input type='text1' name="qty"></td><td><input type='text' name="price"></td><button onclick=del('"+ divId +"')>delete</button></td></tr></table>";
        newDiv.innerHTML = output;
        newDiv.className = 'newClass';
        document.body.appendChild(newDiv);                          
    }


    function del (id) {
        var div = document.getElementById(id);
        div.parentNode.removeChild(div);
    }


    </script>


<body>
    <form method="post" action="transaction.php" onclick="create()">    
    <button onclick="create()">create</button>
    <input type="submit" value="submit" />

   </form>
</body>

2 个答案:

答案 0 :(得分:2)

将新HTML附加到正文而不是表单。给表单一个id,例如

<form method="post" action="transaction.php" onclick="create()" id="myform">    

然后将输入附加到表单:

document.getElementById("myform").appendChild(newDiv);

答案 1 :(得分:1)

您的output变量字符串形成不正确。

如果你检查控制台,你会看到:

  

未捕获的SyntaxError:意外的字符串

尝试格式化字符串,如下所示:

var output = "<table id='e' border><tr><td><input type='text' name='qname'></td><td><input type='text1' name='qty'></td><td><input type='text' name='price'></td><button onclick=del('" + divId + "')>delete</button></td></tr></table>";

演示:http://jsfiddle.net/IrvinDominin/Lcnet/