簡體   English   中英

如何在ChoiceType Symfony Form Builder中使某些復選框選項默認為選中狀態?

[英]How to make some checkbox options selected by default in ChoiceType Symfony Form Builder?

我正在建立一個具有4種可能選擇的復選框表格。 默認情況下,使2和3(綠色和藍色)處於選中狀態,而其余兩項沒有處於選中狀態的方法是什么?

我相信$ builder數組中的“數據”項可能是正確的答案,但是我不確定如何...任何幫助將不勝感激! 謝謝!

$builder->add(
          "What color do you like?",
          ChoiceType::class,
          [
          'label' => "What color do you like?",
          'choices' => [1 => "Red", 2 => "Green", 3 => "Blue", 4=>"Orange"],
          'expanded' => true,
          'multiple' => true,
          'required' => true,
          'help' => "Pick as many as you like!",
      ]
                );

我希望我應該能夠在類似“ 2 = 1,3 = 1”的地方進行編碼,以指示默認情況下應檢查我的兩個選擇,但尚不清楚如何指示應選擇這兩個選擇默認情況下選中。

首先,傳遞給choices的數組應采用label => value的形式,因此必須翻轉您的值和鍵。

然后,可以將屬性添加到特定選擇中,可以使用choice_attr選項:

'choice_attr' => function($opt, $k, $v) {
    if ($v == '2' || $v == '3') {
        return ['checked' => 'checked'];
    }
},

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM