Ajax HTML FORM不发送输入

时间:2017-01-16 09:28:34

标签: javascript php html ajax forms

我遇到了一个我无法解决的问题。

我有一个打开表单的页面(index.php),包含另一个带有PHP(indexsearch.php)的页面并关闭表单。 这个包含的页面正在使用一个脚本来显示我的网站上的一些数据,页面上的数据是通过链接到search.php的AJAX函数请求的,它正在使用表和复选框,因此我们可以选择哪些数据到与...合作。 请参阅此架构:

enter image description here

一切正常,但即使检查复选框也不会发送。我在search.php中添加了名称和值

<td> <input type="checkbox" name="ajout[]" value="<?php echo $result['id']; ?>"/> </td>

我也没有打开另一张表格。 所以我想这个问题可能来自于AJAX数据作为一个独立的表单工作,这个表单没有包含在我的页面中。

请参阅html代码:

<body>
<div class="division">
                    <table id="text-p">
                        <tr>
                            <td>
                        <form action="" method="get" enctype="multipart/form-data">
                            <textarea id="text-p1" name="text-p1" maxlength="300" placeholder="Text1"></textarea>
                            </td>
                            <td>
                            <textarea id="text-p2" name="text-p2" maxlength="300" placeholder="Text2"></textarea>
                            </td>
                        </tr>

                        <tr>
                            <td>
                            <input type="hidden" name="MAX_FILE_SIZE" value="1000000">
                            Logo : <input name="logo-p1" type="file" accept="image/*">
                            </td>
                            <td>
                            <input type="hidden" name="MAX_FILE_SIZE" value="1000000">
                            Logo : <input name="logo-p2" type="file" accept="image/*">
                            </td>
                        </tr>

              </table>
                </div>


                <div class="division">

        <div width="100%" style="height: 50px;">
            <input type="text" name="recherche" id="recherche" style="width: 75%; float:left; display: inline-block;" placeholder="Rechercher...">
            <div style="float:right;">
                    <input type="radio" name="onglet" value="val1" id="act" checked="">Activité
                    <input type="radio" name="onglet" value="val2" id="sect">Secteur
                    <input type="radio" name="onglet" value="val3" id="ecr">Ecrans
            </div>
        </div>
        <div width="100%" id="resultats">


                    <input id="ok" type="button" class="pageselector" name="pageselector" value="1" checked=""><table id="resultat1" width="100%" style="text-align: center;" class="resultatshow">
                <tbody><tr>
                        <td>Cat</td>
                                            <td>Text-1</td>
                        <td>Text-2</td>
                        <td>Sélec</td>

                </tr>
                        <tr>

                        <td>Cat1</td>
                                                <td>NULL</td>
                        <td>NULL</td>
                        <td> <input type="checkbox" name="ajout[]" value="1"> </td>
            </tr>

                    <tr>

                        <td>CAT2</td>
                                                <td>EMPTY</td>
                        <td>EMPTY</td>
                        <td> <input type="checkbox" name="ajout[]" value="2"> </td>
            </tr>

</table></div>                      
                    <input type="submit" value="UPDATE">

                </div>


            </body>

我该如何解决?

1 个答案:

答案 0 :(得分:-1)

我不确定,但我想这可能是由复选框的name属性中的方括号引起的。如果您有理由这样做,您必须正确使用它。例如,这是HTML表单字段:

<input type='checkbox' name='checkbox[myOption]'>

您必须记住POST是一系列选项。所以如上所述,你必须在服务器端以正确的方式访问它:

$_POST['checkbox']['myOption'];

我不知道这是否能解决你的问题,但我希望它有所帮助