php – symfony2自定义表单选择选项
发布时间:2020-12-13 16:03:32 所属栏目:PHP教程 来源:网络整理
导读:我试图做一个简单的表单来添加一个名称和颜色的活动. 所以我想列出一些数组的颜色,现在它正在工作我有颜色的名称. 我可以添加任何属性到我的选择标签: $form = $this-createFormBuilder($myclass)-add('Colors','choice',array('label'='select some colors
我试图做一个简单的表单来添加一个名称和颜色的活动.
所以我想列出一些数组的颜色,现在它正在工作我有颜色的名称. $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的选项标签(而不是选择标签).
通常,字段的默认数据由存储在对象中的值确定.例如,如果
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),)); (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |