首页 > 无法使用jQuery的append()添加同名<input>希望一起上传数组数据

无法使用jQuery的append()添加同名<input>希望一起上传数组数据

根据需求,希望实现添加点击添加商品时出现一行新的商品信息输入行(此处已实现),并将所有信息以数组形式回传至后台。

商品名称的input均已Goods_name[]命名,代码如下:

<script type="text/javascript">

        $(document).ready(function() {
            var element = '<td><input type="text" id="cityChoice" name="Goods_name[]"></td>';
            var block = $("#tbody");
            $("#add_row").click(function() {
                block.append(element);
            });
        });

    </script>
<tr>
    <td class="td_bor"><input type="text" id="cityChoice" name="Goods_name[]"></td>
</tr>

但php后台接收到的数据也确实是一个数组,但仅可以接收到第一行的数据,通过jquery添加的新的行的内容并不能接收到。
下图为输入的两个商品名称,<input>的name均为Goods_name[],


下图则为后台接收的数据,Goods_name确是数组,但仅有第一个数据。

跪求答案啊~


谢谢大家的关系和帮助,最后发现无法获得全部数据的原因是代码中<div></div>结构出错,由于多了</div>而导致的。具体的理由我还需要找一下,应该和DOM有关。
在完成对HTML本身错误的修正后,数据可以被很好的接收了。


Goods_name[]写在nsme里面就变成了字符串。而不是数组了


要用js的$.each()循环获取数据放在数组中传到后台


var element = '<td><input type="text" id="cityChoice" name="Goods_name[]"></td>';

不应该使用`
id

id应该具有唯一性,使用class啊
【热门文章】
【热门文章】