我在codeigniter上具有数组下拉式表单,我想在选择一个数组时添加另一个表单。这是我到目前为止尝试的
**Form**
<label class="col-sm-2 control-label">Item Name</label>
<?php
$js='id="item" onChange="additem();"';
$options = array(
'1' => 'Metal',
'2' => 'Plastic',
'3' => 'Rubber',
'4' => 'Glass',
);
echo form_dropdown('item', $class,$js);
?>
模型
public function get_class()
{
$this->db->select('id_metal, desc_metal');
$this->db->from('uip_metal');
$result = $this->db->get();
if($result->num_rows() > 0) {
foreach($result->result_array() as $row) {
$return[$row['id_metal']] = $row['desc_metal'];
}
}
return $return;
}
same function for the 3 remaining item
控制器
public function add()
{
$data['uip_inventaris'] = $this->uip_inventariss->add();
$data['action'] = 'uip_inventaris/save';
$data['metal']=$this->uip_inventariss->get_metal();
$data['plastic']=$this->uip_inventariss->get_plastic();
$data['tekukbesi']=$this->uip_inventariss->get_rubber();
$data['class']= $this->uip_inventariss->get_glass();
}
如何制作JavaScript代码?
为此,您不需要通过模型或控制器类别进行拨动,您只需使用javascript或jquery即可克隆/重复下拉[使用form_dropdown()创建]选择下拉的选项。为此,只需在您的视图中添加代码:
<label class="col-sm-2 control-label">Item Name</label>
<div id="itemSelect">
<?php
$js='id="item"';
$options = array(
'1' => 'Metal',
'2' => 'Plastic',
'3' => 'Rubber',
'4' => 'Glass',
);
echo form_dropdown('item', $class,$js);
?>
</div>
<script type="text/javascript">
$(function(){
$(document.body).on('change','select[name="item"]',function(){
$(this).clone().appendTo($('#itemSelect'));
});
});
</script>