php – symfony2自定义表单选择选项

发布时间:2022-04-30 发布网站:脚本宝典
脚本宝典收集整理的这篇文章主要介绍了php – symfony2自定义表单选择选项脚本宝典觉得挺不错的,现在分享给大家,也给大家做个参考。
我试图做一个简单的表单来添加一个名称和颜色的活动.

所以我想列出一些数组的颜色,现在它正在工作我有颜色的名称.
我可以添加任何属性到我的选择标签

$form = $this->createFormBuilder($myclass)
->add('Colors','choice',array('label'=>'select some colors','multiple'=>true,'choices'=>array(1=>'red',2=>'blue',3=>'green'),'attr'=>array('style'=>'width:300px','customattr'=>'customdata')
            ));

输出将是这样的:

<select name="select" style="width: 300px;" multiple="multiple" customattr="customdata">
   <option value="1">red</option>
   <option value="2">blue</option>
   <option value="3">green</option>
</select>

但是如何添加选择=“选择”和任何属性我想要我的选择选项?喜欢这个:

<select name="select" style="width: 300px;" multiple="multiple" customattr="customdata">
   <option style="background-color: #F00;" value="1" selected="selected">red</option>
   <option style="background-color: #00F;" value="2" selected="selected">blue</option>
   <option style="background-color: #0F0;" value="3">green</option>
</select>

我的问题是:如何通过symfony FormBuilder添加自定义attr的选项标签(而不是选择标签).
注意:我不想使用JavaScript.我想使用symfony2 FormBuilder自定义我的选择选项.

通常,字段的认数据由存储在对象中的值确定.例如,如果
class MyClass
{
    PRivate $Colors = array(1,2);
}

那么条目“1”和“2”(标签红色”和“绿色”)将显示为选择.您也可以将该值存储在对象中,然后再将其传递给表单:

$myObject->Colors = array(1,2);

$form = $this->createFormBuilder($myObject)
    ...

最后一种可能是通过传递“数据”选项来覆盖存储在对象中的认值:

$builder->add('Colors',array(
    'label' => 'select some colors','multiple' => true,'choices' => array(1 => 'red',2 => 'blue',3 => 'green'),'attr' => array('style' => 'width:300px','customattr' => 'customdata'),'data' => array(1,2),));

脚本宝典总结

以上是脚本宝典为你收集整理的php – symfony2自定义表单选择选项全部内容,希望文章能够帮你解决php – symfony2自定义表单选择选项所遇到的问题。

如果觉得脚本宝典网站内容还不错,欢迎将脚本宝典推荐好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。