Jquery 添加未传递给 php 的输入数组字段
Jquery add input array fields not passed to php
我有一个简单的表单,jquery在我的表单中添加了无限的输入字段。问题是,当jquery添加一个字段时,它实际上并没有在提交时发布任何值。任何想法如何调试?这是我的代码:
<script src="../orders/src/jquery.min.js"></script>
<script type="text/javascript">
$(function() {
var addDiv = $('#addinput');
var i = $('#addinput p').size() + 1;
$('#addNew').live('click', function() {
$('<p><input type="text" id="p_new" size="40" name="item[]" value="" placeholder="Input here" /><a href="#" id="remNew">Премахни</a> </p>').appendTo(addDiv);
i++;
return false;
});
$('#remNew').live('click', function() {
if( i > 2 ) {
$(this).parents('p').remove();
i--;
}
return false;
});
});
</script>
<form action="add-exe.php" method="post">
<div id="addinput">
<p>
<a href="#" id="addNew">Add line</a>
</p>
<input type="submit" value="Запази">
</div>
</form>
这是简单的 php 端,它试图读取添加到数组中的内容。到目前为止,通过 Jquery 添加的字段尚未传递
$itemlist = count($_POST['item']) ? $_POST['item'] : array();
print_r(array_values($itemlist));
如果输入字段不是动态添加的 - 表单可以很好地发布数组
你应该使用 on 而不是 live。此外,每次添加后都应调用添加侦听器以删除字段的代码:
var addDiv = $('#addinput');
var i = $('#addinput p').size() + 1;
$('#addNew').on('click', function() {
$('<p><input type="text" id="p_new" size="40" name="item[]" value="" placeholder="Input here" /><a href="#" class="remNew">Премахни</a> </p>').appendTo(addDiv);
i++;
assignRemoveEvents();
});
var assignRemoveEvents = function() {
$('.remNew').off('click').on('click', function() {
if( i > 2 ) {
$(this).parents('p').remove();
i--;
}
});
}
完成此操作后,您应该将数据放入PHP。如果您发布 php 的代码,我们可能会找出问题所在。
相关文章:
- $q.all当输入数组中的一项不是promise时,Typescript检查器失败
- 你能提交一个带有文本输入数组的表单吗
- 使用 jQuery 和 Ajax 发送输入数组
- $.when.apply 根据输入数组的长度返回具有不同结构的结果
- PHP只读取动态创建的输入数组的第一个值
- 使用jquery设置输入数组值
- 使用 javascript 验证输入数组
- 角度 UI 预测文本:如何输入未包含在输入数组中的数据
- 将动态输入索引到其他动态输入数组
- 循环遍历输入数组以设置值,“无法设置未定义的属性值”
- 在输入数组元素时在 html 页面中显示数组元素
- Javascript 隐藏输入数组
- 编码然后在 base64 中解码不会输出我的输入数组缓冲区
- 将隐藏的输入数组传递给 jQuery load()
- 将输入数组中的特定输入值发送到 JavaScript
- 在输入数组的 split() 和子字符串 () 之后的文本区域中显示
- Jquery 添加未传递给 php 的输入数组字段
- Javascript函数显示用户输入数组
- 从输入数组中获取sum's元素
- 如何在文本输入数组中插入字符串