gpt4 book ai didi

php - 选中所有/取消选中循环语句中的所有复选框

转载 作者:行者123 更新时间:2023-11-29 10:17:32 24 4
gpt4 key购买 nike

我的程序有问题。这是我的代码片段。

这是 Javascript/Jquery 代码。

<script language='javascript'>

///SELECTING CHECKBOXES////
$(function(){

// add multiple select / deselect functionality
$("#selectall").click(function () {
$('.case').attr('checked', this.checked);
});

// if all checkbox are selected, check the selectall checkbox
// and viceversa
$(".case").click(function(){

if($(".case").length == $(".case:checked").length) {
$("#selectall").attr("checked", "checked");
} else {
$("#selectall").removeAttr("checked");
}

});
});
</script>

这是我将集成该 javascript 的代码。

 <h2>Quotation ID</h2>
<?php

$select_orders = mysql_query ("SELECT * FROM tblorder WHERE project_id = '$project_id' GROUP BY quotation_id") OR DIE (mysql_error());
while ($row2=mysql_fetch_array($select_orders)){
$quote_id = $row2['quotation_id'];


?>
<h3 class="expand"><?php echo $quote_id; ?></h3>
<div class="collapse">
<table align='center' border='1' class='display'>
<thead>
<th><input type='checkbox' onclick='checkall()' id='selectall'/></th>
<th>Product Type</th>
<th width='20px'>Product type code</th>
<th width='20px'>Quantity</th>
<th>Width</th>
<th>Height</th>
<th>Total Sub.</th>
</thead>
<tbody>
<?php
$tots_tots = 0;
$tots_subs = 0;
$select_orders2 = mysql_query ("SELECT * FROM tblorder WHERE project_id = '$project_id' AND quotation_id = '$quote_id'") OR DIE (mysql_error());
while ($row3=mysql_fetch_array($select_orders2)){
$idd = $row3['id'];
$project_id2 = $row3['project_id'];
$order_id = $row3['quotation_id'];
$prod_type = $row3['prod_type'];
$prod_type_code = $row3['prod_type_code'];
$qty = $row3['qty'];
$width = $row3['width'];
$height = $row3['height'];
$tot_sub = $row3['total_subs'];

$tots_subs += $tot_sub;

echo "<tr bgcolor='".$colors[$c++ % 2]."' align='center'>";
echo "<td>
<input type='hidden' name='project_name' value='$project_name'>
<input type='checkbox' name='check_ptc[]' value='$prod_type_code' style='display:none;' checked>
<input type='checkbox' class='case' name='checkbox[]' value='".$idd."'></td>";
echo "
<input type='hidden' name='project_id[]' value='$project_id2'>
</td>";
echo "<td>".$prod_type."
<input type='hidden' name='quotation_id[]' value='$order_id'>
<input type='hidden' name='prod_type[]' value='$prod_type'>
</td>";
echo "<td>".$prod_type_code."
<input type='hidden' name='prod_type_code[]' value='$prod_type_code'>
</td>";
echo "<td>".$qty."</td>";
echo "<td>".$width."</td>";
echo "<td>".$height."</td>";
echo "<td>".$tot_sub."</td>";
echo "</tr>";
}
echo "<tr>";
echo "<td></td><td></td><td></td><td></td><td></td>
<td>
<strong><b>Total:</b></strong>";
echo "</td>";
echo "<td>
<font color='#900'><u><b>$tots_subs</b></u></font>
</td>";

echo "</tr>";
?>
</tbody>
</table>
</div>
<?php
}
?>

由于表在循环中。问题是第一个表出现时。然后单击第一个标题复选框,它将选中其他表中的所有复选框。这是我不想发生的。我正在寻找的是,如果有一种方法我也可以迭代复选框的 ID 及其类。或者有任何其他方式来做我想发生的事情。


Here's a sample screen shot of the code output will be..

如您所见。这 3 个表有自己的复选框标题,我想在其中检查表中的所有内容。你的聪明主意是什么?我该怎么做。

提前致谢..

最佳答案

你可以这样做。

$('.allcb').on('click', function(){
var childClass = $(this).attr('data-child');
$('.'+childClass+'').prop('checked', this.checked);
});

FIDDLE

更新

只需将 allcb 类应用到主复选框,并将名为 chk 的类应用到子复选框。这应该符合您的需要。这是更新的 FIDDLE

关于php - 选中所有/取消选中循环语句中的所有复选框,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18691259/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com