我的表單中有一個名爲* sub_choice *的選擇字段類型,它的選擇將通過AJAX動態加載,具體取決於父選擇字段的名稱* parent_choice *的選定值。加載選項完美無缺,但在提交時驗證sub_choice的值時遇到問題。它提供了「此值無效」驗證錯誤,因爲提交的值在構建時不在sub_choice字段的選項中。那麼有沒有一種方法可以正確驗證sub_choice字段的提交值?以下是構建表單的代碼。我正在使用Symfony 2.1。在Symfony 2中驗證動態加載的選擇
public function buildForm(FormBuilderInterface $builder, array $options)
{
$builder->add('parent_choice', 'entity', array(
'label' => 'Parent Choice',
'class' => 'Acme\TestBundle\Entity\ParentChoice'
));
$builder->add('sub_choice', 'choice', array(
'label' => 'Sub Choice',
'choices' => array(),
'virtual' => true
));
}
你有沒有這個運氣?我堅持類似的東西。 –
一個更近的類似的問題鏈接到這一個,其中一個答案看起來不錯,與使用PRE_BIND事件來挑選有效的選項列表:http://stackoverflow.com/questions/18207476/symfony2-動態表單選擇驗證,刪除 – frumious
這裏版本任意值接受 http://stackoverflow.com/questions/28245027/symfony-2-choice-ajax-validation-fix –