Yii 2 ActiveForm 表单字段如何在复选框列表中实现 "select all" 选项?
Yii 2 ActiveForm form field how to implement "select all" option in checkboxlist?
Yii 2 ActiveForm 表单字段如何在复选框列表中实现 "select all" 选项?
<?php
$form = ActiveForm::begin([
'id' => 'form-id',
'type' => ActiveForm::TYPE_HORIZONTAL,
'options' => ['class' => 'well'],
]);
?>
<?php
echo $form->field($model, 'MY_DESC', ['template' => "{label}\n{input}\n{hint}\n{error}"])
->label(false)
->checkboxList($mylist, ['separator' => '<hr>']);
?>
<?= Html::submitButton('submit', ['class' => 'btn btn-primary']) ?>
<?php ActiveForm::end();
?>
1) 将 checkbox 添加到您的表单中,如下所示:
echo Html::checkbox(null, false, [
'label' => 'Check all',
'class' => 'check-all',
]);
2) 添加一些 javascript 使其工作:
$('.check-all').click(function() {
var selector = $(this).is(':checked') ? ':not(:checked)' : ':checked';
$('#root-container-id input[type="checkbox"]' + selector).each(function() {
$(this).trigger('click');
});
});
将 #root-container-id
替换为该字段的容器的实际 ID。它应该类似于型号名称 + 破折号 + MENU_DESC。在生成的 html 输出中查看它。或者您可以添加另一个 class 或使用复选框名称构建选择器,这取决于您。
然后注册这个js,最好用assets.
如果启用,触发点击用于客户端验证的正确工作。
Yii 2 ActiveForm 表单字段如何在复选框列表中实现 "select all" 选项?
<?php
$form = ActiveForm::begin([
'id' => 'form-id',
'type' => ActiveForm::TYPE_HORIZONTAL,
'options' => ['class' => 'well'],
]);
?>
<?php
echo $form->field($model, 'MY_DESC', ['template' => "{label}\n{input}\n{hint}\n{error}"])
->label(false)
->checkboxList($mylist, ['separator' => '<hr>']);
?>
<?= Html::submitButton('submit', ['class' => 'btn btn-primary']) ?>
<?php ActiveForm::end();
?>
1) 将 checkbox 添加到您的表单中,如下所示:
echo Html::checkbox(null, false, [
'label' => 'Check all',
'class' => 'check-all',
]);
2) 添加一些 javascript 使其工作:
$('.check-all').click(function() {
var selector = $(this).is(':checked') ? ':not(:checked)' : ':checked';
$('#root-container-id input[type="checkbox"]' + selector).each(function() {
$(this).trigger('click');
});
});
将 #root-container-id
替换为该字段的容器的实际 ID。它应该类似于型号名称 + 破折号 + MENU_DESC。在生成的 html 输出中查看它。或者您可以添加另一个 class 或使用复选框名称构建选择器,这取决于您。
然后注册这个js,最好用assets.
如果启用,触发点击用于客户端验证的正确工作。