我的问题是:如何根据用户从另一个下拉列表中选择的内容,从一个列表中更改选项值。我的问题是这两个列表必须填充查询。
<label for="category"></label>
<select name="category" id="category">
<option value="0" >Choose Category</option>
<?php foreach(Categories::find_all() as $id) :?>
<?php echo "<option value=".$id->id .">". $id->cat_name."</option>"; ?>
<?php endforeach?>
<label for="sub_category"></label>
<select name="sub_category" id="sub_category">
<option value="0" >Choose Sub Category</option>
<?php foreach(Categories_sub::find_by_cat_id(????) as $id) :?>
<?php echo "<option value=".$id->id .">". $id->cat_sub_name."</option>"; ?>
<?php endforeach?>
答案 0 :(得分:1)
我会通过以下方式之一执行此操作,两者都涉及javascript:
1。 当第一个选择框值发生变化时,使用AJAX加载第二个选择框(删除当前第二个选择框)。
2。 打印出所有选择框。然后使用javascript显示并隐藏正确的选择框。这不涉及AJAX,但您需要使用PHP检查第一个选择框以检查应该处理哪个第二个选择框。
我建议像jQuery这样的框架来做这两个选项中的一个。