[英]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.