嗨,我正在使用 codeigniter。单击按钮时,我使用 javascript 动态添加行。 这是我的脚本
<script>
function displayResult() {
var row = document.getElementById("test").insertRow(-1);
row.innerHTML = '<td><input type="text" name="employee[]" value="" style="width:80px;"/></td><td><input type="text" name="start_time[]" value="" style="width:35px;"/></td><td><input type="text" name="pid[]" style="width:35px;"/></td><td><input type="text" name="description[]" class="description" value="" style="width:145px;"/></td><td><input type="text" class="type" value="" style="width:45px;"/></td><td><input type="text" class="qty_prch" value="" style="width:45px;"/></td><td><input type="text" class="qty_used" value="" style="width:45px;"/></td><td><input type="text" value="" style="width:70px;"/></td><td><input type="text" value="" style="width:70px;"/></td><td><input type="text" value="" style="width:70px;"/></td><td><input type="text" value="" style="width:70px;"/></td>';
}
</script>
在此脚本中,我生成一行包含许多文本框的行。现在我需要一个 form_dropdown
而不是脚本中的第一个文本框(employee[]
)
我的 form_dropdown 代码:
这里我从 Controller 文件中获取数据。我的数据库中有该员工的详细信息
<?php
//form data
$attributes = array('class' => 'form-horizontal', 'id' => '');
$options_employee = array('' => "Select");
foreach ($employee as $row)
{
$options_employee[$row['name']] = $row['name'];
}
?>
这就是我在 View 页面中使用它的方式。
<?php
echo '<div class="control-group">';
echo '<div class="controls">';
echo form_dropdown('employee', $options_employee, set_value('employee[]'), 'class="span2"');
echo '</div>';
echo '</div">';
?>
最佳答案
当你有数据数组时,在 JS 中下拉菜单真的很容易。
您可以使用 JS 原生 map 函数和数组来轻松渲染菜单,如下所示。
JSON/对象:
$options_employee: [
'Michael',
'John',
'Sam'
]
HTML:
<div id="employee-menu">
<div class="control-group">
<div class="controls">
<select name="employee" class="span2">
<option></option>
</select>
</div>
</div>
</div>
JS:
mag.module("employee-menu", {
view: function(state, props) {
state.option = props.$options_employee.map(function(employee, key) {
return {
_value: key,
_text: employee
}
})
}
}, props)
这是完整的工作示例:http://jsbin.com/pexifodari/edit?html,js,output
希望有帮助!
关于javascript - 如何使用 javascript 生成输入类型下拉列表?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32647719/