【发布时间】:2015-02-23 22:21:11
【问题描述】:
查看:learning_view.php
这是我从数据库中填充的第一个下拉列表。
<select name = 'category' id = 'category'>
<option value="">-- Select Category --</option>
<?php foreach($category as $item){ ?>
<option value="<?php echo $item->id_cat; ?>"><?php echo $item->name; ?></option>
<?php } ?>
</select>
<br><br>
我想要的是填充另一个依赖于第一个下拉列表的下拉列表。为此,我使用了 jQuery ajax 帖子。
第二个下拉菜单:
<select name = 'type' id = 'type'>
<option value="">-- Select Type --</option>
<?php foreach($type as $item){ ?>
<option value="<?php echo $item->id_type; ?>"><?php echo $item->name; ?></option>
<?php } ?>
</select>
<br><br>
ajax 帖子:
jQuery(document).ready(function(){
$("#category").change(function() {
var category_id = {"category_id" : $('#category').val()};
console.log(category_id);
$.ajax({
type: "POST",
data: category_id,
url: "<?= base_url() ?>learning/dependent_dropdown",
success: function(data){
$.each(data, function(i, data){
console.log(data.name);
console.log(data.id_type)
});
}
});
});
});
控制器:learning.php
public function dependent_dropdown()
{
if(isset($_POST['category_id']))
{
$this->output
->set_content_type("application/json")
->set_output(json_encode($this->learning_model->getType($_POST['category_id'])));
}
}
数据来自我检查过的 ajax 发布后的数据库
console.log(data.name);
console.log(data.id_type)
在控制台中。
但无法弄清楚如何使用我视图的第二个下拉列表中的数据。
我的意思是如何用我在 ajax 发布后收到的数据填充第二个下拉列表。
【问题讨论】:
标签: php jquery ajax codeigniter drop-down-menu