我花了很多时间搜索这类问题,但没有找到合适的答案。我想要的是从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>
答案 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>";