2016-04-22 70 views
0

我需要一个全选复选框和这个复选框。如果我点击全选复选框,则应选中所有复选框,并取消选择我需要的选项。在symfony表单构建器中选中所有复选框的多个复选框

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, 
     )) 
    } 
} 
+0

固定的语法和改善块代码格式 – Robert

+0

假设你不需要实际存储的信息,用户是否点击全选框,这是很容易做一个额外的复选框+ javascript/jquery直接在视图中(即不需要修改实际的表单类型为此) – ejuhjav

回答

1

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

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

和JavaScript来选择所有其他:

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