echo '<div class="myclass">';
echo $form->input('Car Model:',array('id'=>'carmodels', 'name'=>'carmodels', 'options' => $year, 'label'=>false, 'div'=>false));
echo '</div>'
<div class="myclass">
<select name="carmodels" id="carmodels">
<option value="1995">Jaq</option>
<option value="1996">Reliant</option>
<option value="1997">Toyota</option>
</select></div>
但是现在我需要为名为body的选项添加一个属性。所以它显示
<div class="myclass">
<select name="carmodels" id="carmodels">
<option value="1995" body="4door">Jaq</option>
<option value="1996" body="2door">Reliant</option>
<option value="1997" body="4 door">Toyota</option>
</select></div>
答案 0 :(得分:2)
使用$ form-&gt; input()或$ form-&gt; select()无法执行您想要的操作。传递给任一函数的options数组只接受一个简单的名称=&gt;值数组。
不确定为什么你这样做,因为它甚至不是有效的HTML,但如果你真的想要上面的输出,只需用for循环生成选项标签。
答案 1 :(得分:2)
有可能这样:
$options = array(
...
array('name' => 'United states', 'value' => 'USA', 'title' => 'the title that you want'),
array('name' => 'USA', 'value' => 'USA', 'title' => 'the other title that you want'),
);
echo $this->Form->input('test', array('type'=>'select', 'options'=>$options));
看看这个链接,了解有关cakephp输入的一些很酷的东西,然后选择: http://www.dereuromark.de/2012/03/01/some-new-crazy-cakephp-tricks/
答案 2 :(得分:0)
$options = array(
1 => 'One',
2 => array('name' => 'Two', 'value' => 2, 'class' => 'extra'),
3 => 'Three',
6 => array('name' => 'Six', 'value' => 6, "data-icon"=>"fa-arrow-circle-o-right")
);
echo $this->Form->input('my_option_id',array('type' =>'select', 'options'=>$options));
HTML =&GT;
<select name="data[my_option_id]" id="my_option_id">
<option value="1">One</option>
<option value="2" class="extra">Two</option>
<option value="3">Three</option>
<option value="6" data-icon="fa-arrow-circle-o-right" >Six</option>
</select>
答案 3 :(得分:-1)
$ options = array(1995 =&gt;'Jaq',1996 =&gt;'Reliant',1996 =&gt;'丰田'); echo $ form-&gt; select('title',$ options,null,array('class'=&gt;'ddlSortModule'),false);