我动态添加输入文本框并尝试使用POST方法传递值,但每次提交表单时,我只收到第一个值。
<script type="text/javascript">
function add_ele() {
// For Internet Explorer
try {
el = document.createElement("<input type='text' name='cat[]' >");
}
// For other browsers
catch (e) {
el = document.createElement('input');
el.setAttribute('type', 'text');
el.setAttribute('name', 'cat[]');
}
document.getElementById('cate').appendChild(el);
}
</script>
<form action='submit.php' method='POST' enctype='multipart/form-data'>
<div id='cate' style='width:100px'>
<input type='text' name='cat[]' value='kjkj'>
</div>
</form>
<a href='#' onClick=\"return add_ele()\">Add Another</a>
提交页面:
$p_cat = $_POST['cat'];
foreach ($p_cat as $p_cate ) {
echo "$p_cate . <br>";
}
有人请指导。
答案 0 :(得分:0)
如果这是您的完整代码,则表示您未设置<input>
的{{1}}属性,因此无需提交任何内容。这是一个修改过的(并清理过的)示例:
value
答案 1 :(得分:0)
您应该在HTML标记中使用双引号(不是撇号)。这应该工作:
el = document.createElement('<input type="text" name="cat[]" >');
我猜你必须在html标记中使用双引号。这应该有效: