Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/396.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 通过AJAX从大型表单发送数据_Javascript_Jquery_Ajax_Post_Smarty - Fatal编程技术网

Javascript 通过AJAX从大型表单发送数据

Javascript 通过AJAX从大型表单发送数据,javascript,jquery,ajax,post,smarty,Javascript,Jquery,Ajax,Post,Smarty,我有一个表格,有30个字段:3个字段,重复10次。这是我的代码: <form id="artikelform" method="POST" name="controleartikelen" action=""> <table id="controle"> <tr><th>Maakartikel</th><th>Aantal</th><th>Leverdatum</th></t

我有一个表格,有30个字段:3个字段,重复10次。这是我的代码:

<form id="artikelform" method="POST" name="controleartikelen" action="">
<table id="controle">
    <tr><th>Maakartikel</th><th>Aantal</th><th>Leverdatum</th></tr>
    {for $i=1 to 10}
        <tr>
            <td><input type="text" name="artikel" class="artinput"/></td>
            <td><input type="text" name="aantal" class="aantalinput"/>&nbsp;x</td>
            <td><input type="text" name="datum" class="dateinput"/></td>
        </tr>
    {/for}
</table>
<input type="button" onclick="javascript:startControle();" value="Controleer"/>
</form>

我认为您应该尝试
$('#artikelform').serialize()
而不是
$.param($(“#artikelform”).serializeArray()
然后您应该能够使用
$\u POST['fieldname']
毫无问题地访问php脚本中的字段

我认为您应该尝试
$('artikelform').serialize()
而不是
$.param($('artikelform').serializeArray()
然后,您应该能够使用
$\u POST['fieldname']
访问php脚本中的字段,而不会出现任何问题

1) 使用PHP函数json_decode()将json编码的数据结构映射到PHP数组,或

2) 不要序列化负载,而是将变量命名为php数组,因此:

    <tr>
        <td><input type="text" name="artikel[]" class="artinput"/></td>
        <td><input type="text" name="aantal[]" class="aantalinput"/>&nbsp;x</td>
        <td><input type="text" name="datum[]" class="dateinput"/></td>
    </tr>

x
以下任一项:

1) 使用PHP函数json_decode()将json编码的数据结构映射到PHP数组,或

2) 不要序列化负载,而是将变量命名为php数组,因此:

    <tr>
        <td><input type="text" name="artikel[]" class="artinput"/></td>
        <td><input type="text" name="aantal[]" class="aantalinput"/>&nbsp;x</td>
        <td><input type="text" name="datum[]" class="dateinput"/></td>
    </tr>

x

只需使用
$(form).serialize()
(与
$.param($(form).serializeArray())相同)
,它就可以传递给php了。好吧,那么什么是正确的php代码来获取'artikel'的第一个值呢?var dump$\u POST而不是猜测,也许这会帮助您了解以这种方式传递表单字段所生成的结构。var_dump($\u POST['artikel'])返回字符串(0)”,除非我将[]添加到我的输入名称中。只需使用
$(表单)。serialize()
(与
$.param($(表单)。serializeArray())
)即可将其传递到php。ok,那么,什么才是获取“artikel”第一个值的正确PHP代码呢?var dump$\u POST而不是猜测,也许这会帮助您了解以这种方式传递表单字段所生成的结构。var\u dump($\u POST['artikel'])返回字符串(0)”,除非我将[]添加到我的InputNameNope,否则var\u dump($\u POST['artikel'])返回字符串(0)”,除非我将[]添加到我的inputnamesnope,否则var_dump($\u POST['artikel'])将返回字符串(0)”,除非我将[]添加到我的inputnames