通常,我总是使用CakePHP表单助手列出带选项的选择框。克隆表单选择框与选项.CakePHP
我想知道,如果我可以手动创建它(我的意思是没有CakePHP表单助手)?
例子: 使用CakePHP形式帮助创建选择框
<?php echo $this->Form->input('product_name',array('options'=>$myoptions));?>
但我想要做类似下面
<select name="data[Product][product_name]" id="product">
<options value="1">One</options>
<options value="2">Two</options>
<options value="3">Three</options>
</select>
任何想法? 感谢 CakePHP的2.5.7
- 编辑 -
我想克隆多选框,将遵循CakePHP的形式结构。
好的问题从这里开始。 默认情况下,我会使用CakePHP form helper
来绘制选择框及其选项。
我写了这样的代码:
<?php echo $this->Form->input('Redemption.0.type_id',array('class'=>'form-control','id'=>'selectProduct','label'=>false,'empty'=>'Choose Type','options'=>$types));?>
它将HTML结构返回象下面这样:
<select name="data[Redemption][0][type_id]" class="form-control" id="selectProduct">
<option value="">Choose Type</option>
<option value="1">Toner</option>
<option value="2">Ink Catridge</option>
</select>
我想克隆上述新的选择框,但不同的现有的选择框名称值如下:
<select name="data[Redemption][1][type_id]" class="form-control" id="selectProduct">
<option value="">Choose Type</option>
<option value="1">Toner</option>
<option value="2">Ink Catridge</option>
</select>
请注意,整数值在name="data[Redemption][1][type_id]"
增加了。那是我想要的。
但现在,我不知道如上所述做数据更改的克隆。 我已经尝试了几个jquery方法,如.clone().append(),但它不起作用,因为选择框内的选项数据变得多余。
可以请教我如何在CakePHP中复制/克隆选择框?
谢谢。 CakePHP的2.5.7
你为什么要这么做?当然,这是可能的,但除非你发现了'FormHelper'的特殊限制,否则没有必要手动做这件事。 – drmonkeyninja
,因为我想动态地添加多个选择字段,假设我希望产品字段可以在用户单击“添加更多”按钮时增加,而选择框中的选项数据相同。 –
除非我误解了你的评论,这听起来像是你想要做的是客户端而不是服务器端;在这种情况下,您仍然可以像平常一样使用FormHelper,但需要JavaScript解决方案来添加到输出“