我正在使用codeigiter的form_dropdown((,并希望在不提交表单的情况下在同一视图中更深入地更改数据。
在查看 php 文件中:
echo form_dropdown('department_select',$options,'1');
<?php $test_list = $this->trainingmodel->get_dept_tests($deptselected); ?>
我想$deptselected反映用户在 form_dropdown(( 中选择的内容。我希望每次用户更改其下拉选择但不提交表单时都会更新它。
如果表单已提交,则如下所示的操作将起作用,但在此之前不行:
$deptselected = $_POST['department_select'];
或
$deptselected = $this->input->post('department_select');
必须有一种方法可以使用javascript或onchange或第4个输入参数来做我想做的事情form_dropdown((。
您可以使用链接的select jquery插件 http://www.appelsiini.net/projects/chained
从网站上取一个简单的例子:
<select id="mark" name="mark">
<option value="">--</option>
<option value="bmw" selected>BMW</option>
<option value="audi">Audi</option>
</select>
<select id="series" name="series">
<option value="--">--</option>
</select>
<select id="engine" name="engine">
<option value="--">--</option>
</select>
<select id="transmission" name="transmission">
<option value="--">--</option>
</select>
和上
$("#transmission").remoteChained({
parents : "#engine",
url : "/api/transmissions.json",
depends : "#series"
});
您可以将 ajax url 设置为代码点火器控制器,该控制器将以 json 格式将数据提供给视图。