Symfony 2 选择 Ajax 验证修复



我尝试类似的东西 - 验证Symfony 2中的动态加载选择

但是当我们收到提交的表格时,请检查可能的值 - 在我的座位上,任何内容都是正确的。

我添加修改以允许任何值 - 就像这里一样

$builder->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) {
        $data = $event->getData();
        $event->getForm()->add('tags', 'tag', [
            'label'   => 'Sub Choice',
            'choices' => $data['tags'],
            'mapped'=>false,
            'required'=>false,
            'multiple'=>true,
        ]);
    });

但它不起作用 - 如何使其可用?

标签是我的输入扩展选择(对于 JS Ajax 选择)

好的,

我发现了问题。这个例子没问题,但我们需要array_flip

这是工作版本

 $builder->addEventListener(FormEvents::PRE_SUBMIT, function (FormEvent $event) {
        $data = $event->getData();
        if(is_array($data['tags']))$data=array_flip($data['tags']);
        else $data = array();
        $event->getForm()->add('tags', 'tag', [
            'label'   => 'Sub Choice',
            'choices' => $data,
            'mapped'=>false,
            'required'=>false,
            'multiple'=>true,
        ]);
    });

最新更新