我想使用jquery和ajax填充下拉列表。下拉人口使用jquery从codeigniter控制器获取数据
我的jquery呼叫是
<script>
$(document).ready(function(){
$.ajax({
type: "GET",
url: "<?=base_url()?>user/getstate/", //the script to call to get data
data:'', //you can insert url argumnets here to pass to api.php
dataType: 'json', //data format
success: function(data){ //on recieve of reply
$("#state").append('<option selected>State</option>');
for(i in data)
$("#state").append("<option value=\""+data[i][0]+"\">"+data[i][1]+"</option>");
}
});
});
</script>
需要被填充的部分被
<select id="state" class="span2" style="height:30px" name="state" required>
</select>
在控制器内的功能是
public function getstate(){
$this->load->model('usermodel');
$data=$this->usermodel->getstate();
echo json_encode($data);
}
从其中的数据是模型被取走的是
public function getstate(){
$sql="SELECT * FROM statelist";
$query=$this->db->query($sql);
$result=$query->result_array();
return $result;
}
statelist中的数据是
sid |州名
wb |西孟加拉邦
ga |果阿
我现在面临的问题是,当我加载的页面我得到2元的下拉如预期,但以这种形式
国家
不确定
不确定
现在我不不明白为什么我得到“未定义”而不是所需或预期的数据,如
状态
西孟加拉邦
果阿
解决方案将真正帮助我。
您是否通过alert检查了脚本中的数据? – Kamal 2013-04-06 15:31:05
我把警报,它返回undefined :( – user2252463 2013-04-06 16:20:46