簡體   English   中英

Ajax HTML FORM 不發送輸入

[英]Ajax HTML FORM not sending input

我有一個我想不通的問題。

我有一個頁面(index.php)打開一個表單,包含另一個帶有PHP(indexsearch.php)的頁面並關閉表單。 這個包含的頁面正在使用一個腳本來顯示我網站上的一些數據,在頁面上使用鏈接到 search.php 的 AJAX 函數請求數據,該函數使用表格和復選框,因此我們可以選擇要使用的數據與。 請參閱此架構:

在此處輸入圖片說明

一切正常,但即使選中復選框也不會發送。 我確實在 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>

我該如何解決?

我不確定,但我想這可能是由復選框的name屬性中的方括號引起的。 如果你有理由這樣做,你必須正確地使用它。 例如,這里是 HTML 表單字段:

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

您必須記住POST是一組選項。 所以像上面那樣你必須在服務器端以正確的方式訪問它:

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

我不知道這是否能解決您的問題,但我希望它會有所幫助

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM