我在寫一個表單,可以選擇多個複選框並將其保存到MySQL數據庫中。不過,我現在想限制用戶可以使用javascript選擇的複選框的數量,並且遇到了一些麻煩。使用Javascript驗證選擇多個複選框
似乎導入功能仍然有效,每個複選框需要具有相同的名稱,以便它們可以被識別和內爆,但是爲了使Javascript功能起作用,每個名稱都需要不同,以便他們可以有區別。
任何建議將受到感謝!
這是我一直在玩的代碼。
JavaScript函數:
<?php $calc = mysql_query($query) or die(mysql_error()); ?>
<SCRIPT LANGUAGE="javascript">
function KeepCount()
{
var NewCount = 0
<?php while($count_row = mysql_fetch_array($calc)){
echo "
if (document.import1.checkbox".$count_row['id'].".checked)
{NewCount = NewCount + 1}
";
} ?>
if (NewCount == 6)
{
alert('You can select up to 5 competitors. If you wish to import more you will need to add more judges.')
document.import1; return false;
}
}
</SCRIPT>
形式:
<form action="import_process.php" method="post" name="import1" id="import1">
<input name="import" type="submit" id="import" value="Import">
<table>
<tr>
<td> </td>
<td>Name</td>
<td>Gender</td>
</tr>
<?php $counter = 1;
$result = mysql_query($query) or die(mysql_error());
while($row = mysql_fetch_array($result)){
echo "<tr bgcolor=white>";
echo "<td align=\"center\">
<input name=\"checkbox".$row['id']."\" type=\"checkbox\" id=\"checkbox[]\" value=\"".$row['id']."\" onClick=\"return KeepCount()\"></td>";
}
echo "<td>".$row['name']."</td>";
echo "<td>".$row['gender']."</td>";
echo "</tr>";
$counter++;
}
?>
</table>
</form>
import_process.php:
if(isset($_POST['checkbox'])){
$checkbox = $_POST['checkbox'];
$id = "('" . implode("','", $checkbox) . "');" ;
$sql="
INSERT INTO..."
我不明白你到底在想什麼,import.php是做什麼的? –
該表顯示了用戶體育俱樂部中人員的姓名和性別列表。他們選擇哪些人作爲競爭對手進入競爭對手。 import_process.php應該標識選定的競爭者ID,並將他們的詳細信息插入競爭表。至少它應該這樣做,在上面的例子中,JavaScript的工作原理並不是導入。 – adswayne
您的意思是您無法將與選定競爭對手相關的信息發送到您的服務器,但是您能夠限制用戶檢查5個複選框嗎? –