在symfony表单构建器中选中所有复选框的多个复选框

时间:2016-04-22 04:57:24

标签: symfony checkbox formbuilder selectall

我需要一个带有多个复选框的全选复选框。如果我单击选中所有复选框,则应选中所有复选框并取消选择我也需要。

class HabitacionFotoPrincipalType extends AbstractType
{
    public function buildForm(FormBuilder $builder, array $options) {
        $builder->add('choice', 'choice', array(
            'choices'   => array(
                'morning'   => 'Morning',
                'afternoon' => 'Afternoon',
                'evening'   => 'Evening',
            ),
            'expanded' => true,
            'multiple'  => true,
        ))
    }
}

1 个答案:

答案 0 :(得分:1)

默认情况下,“全选”复选框不是Symfony支持的。所以基本上这需要你添加一个额外的复选框,并添加Javascript逻辑。

$builder->add('selectAll', CheckboxType::class, array(
    'attr' => array('class'=>'selectAllCheckboxes')
);

选择所有其他人的Javascript:

$('.selectAllCheckboxes').click(function(){
    $('<class for other checkboxes>').click();
});