【发布时间】:2018-02-03 15:26:09
【问题描述】:
我目前正在使用 php 循环从数据库中生成面板。 在每个面板上都有一个复选框。选中后,它会检查可折叠面板中其下方的所有复选框。
当面板中的复选框被面板标题中的复选框选中时,它意味着运行一个函数来更新我的数据库,表明该框已被选中。当您关闭可折叠面板并手动选中该框时,该功能将起作用。但是当你从更高级别选中该框并选中它下面的所有框时,它并没有运行我放入的onchange函数。
谁能帮忙?
谢谢, 克里斯蒂安
PHP:
foreach ($results3 as $table3) {
$output_string .= "<div class=\"panel-inner\">\n";
$output_string .= "<div class=\"row\">\n";
$output_string .= "<div class=\"col-sm12\">\n";
$output_string .= "<div class=\"panel-body\">\n";
$output_string .= "<h4 class=\"panel-title\">\n";
$output_string .= "<a>$table3[Call_Flow]</a>\n";
$output_string .= "<input class=\"mycheckbox\" type=\"checkbox\" value=\"$table3[Test_ID]\" onchange=\"adds(tccb$j)\" id=\"tccb$j\"/>\n";
$output_string .= "</h4>\n";
$output_string .= "</div>\n";
$output_string .= "<div id=\"collapseflow$j\" class=\"panel-body collapse\">\n";
HTML:
<div id="check">
</div>
<script>
function adds(id) {
var value = $(id).val()
jQuery.ajax({
url: "selection_update.php",
data: {"value": value},
type: "POST",
dataType: 'json',
success:function(responce){
$("#check").html(responce);
}
});
}
</script>
编辑:
这是我用来检查所有子复选框的代码。
$output_string .= "<script type=\"text/javascript\" language=\"javascript\">\n";
$output_string .= "function checkCheckboxes( id, pID ){\n";
$output_string .= "$('#'+pID).find(':checkbox').each(function(){\n";
$output_string .= "jQuery(this).prop('checked', $('#' + id).is(':checked'));\n";
$output_string .= "});\n";
$output_string .= "}\n";
$output_string .= "</script>\n";
【问题讨论】:
-
PHP 代码没用。显示它输出的 HTML,因为这是我们需要看到的。
-
你在哪里执行adds(...)?
-
您是否错过了复选框@edgaromar90 中的
onchange处理程序? -
完全错过了!我的坏
标签: javascript php jquery html checkbox