Php 如何取消选中复选框
如果选中了另一个复选框,如何取消选中该复选框 有人能帮忙吗 谢谢Php 如何取消选中复选框,php,javascript,Php,Javascript,如果选中了另一个复选框,如何取消选中该复选框 有人能帮忙吗 谢谢 <?php //limit for number of categories displayed per page $limit = 4; $categoriesNum= mysql_query("SELECT COUNT('categoryTopic') FROM categories"); //number of current page $page =(isset($_GET['page']))? (int
<?php
//limit for number of categories displayed per page
$limit = 4;
$categoriesNum= mysql_query("SELECT COUNT('categoryTopic') FROM categories");
//number of current page
$page =(isset($_GET['page']))? (int) $_GET['page'] :1;
//calculate the current page number
$begin =($page - 1)* $limit;
//number of pages needed.
$pagesCount =ceil(mysql_result ($categoriesNum,0)/$limit);
//Query up all the Categories with setting the Limit
$CategoryQuery = mysql_query ("SELECT categoryTopic From categories ORDER BY categoryTopic LIMIT $begin, $limit");
//Place all categories in an array then loop through it displaying them one by one
while ($query_rows = mysql_fetch_assoc($CategoryQuery))
{
$category =$query_rows['categoryTopic'];
//echo $category;
//query all the subcategories that the current category has
$Sub = mysql_query ("SELECT categoryTopic FROM subcategories WHERE categoryTopic='$category'");
$Count = mysql_num_rows ($Sub);
echo '<table width="85%" border="1" cellpadding="0"; cellspacing="0" align="center">
<tr>
<th width="23%" height="44" scope="col" align="left"> '.$query_rows['categoryTopic'].' <br><br><br></th>
<th width="24%" scope="col">'.$Count.'</th>
<th width="25%" scope="col"> 0 </th>
<th width="28%" scope="col"> <form name = "choose">
<label><input type="checkbox" id ="check" value= '.$category.' onchange="handleChange(this);"></label>
</tr>
</table>';
}
?>
<script type="text/jscript">
//this funciton will be called when user checks a check box.
function handleChange(cb) {
//get the selected category
var category = cb.value;
不要使用复选框,使用单选按钮,并给它们所有相同的名称
使用单选按钮
<input type="radio" name="NAME" />
其中,NAME
在所有要相互影响的单选按钮中都是相同的
旁注:您当前的代码无效,因为它生成具有相同ID的多个元素(勾选)。如果您一次只希望勾选一个元素,则单选按钮似乎是更好的选择,尽管如果您希望一次勾选一个或零,则复选框也可以
您的代码当前生成的html无效,因为它为每个复选框提供了相同的id
。此外,您似乎正在每行上创建打开的
标记,而没有匹配的
标记
如果给每个复选框一个公共class
属性:
<input type="checkbox" class="check" value= '.$category.' onchange="handleChange(this);">
演示:
注意:对于要提交的所选值,您需要为复选框提供一个名称
属性-与id
不同,名称
可以对多个元素重复
function handleChange(cb) {
var cbs = document.getElementsByClassName("check");
for (var i = 0; i < cbs.length; i++)
if (cbs[i] != cb)
cbs[i].checked = false;
}