当我尝试在视图页面上使用返回的数组数据时,它会打印undefined而不是数组值。请帮帮我。
我的控制器是:
function test(){
$pro_id = $this->input->post('id',TRUE);
//echo $pro_id;
$cat_id = $this->input->post('cat',TRUE);
$date1 = $this->input->post('dt',TRUE);
$firstdate = date('Y-m-d', strtotime($date1));
$lastdate = strtotime(date("Y-m-d", strtotime($firstdate)) . " +6 day");
//echo $cat_id;
$data = array();
$this->load->model('inserttimemodel');
$whr = $this->inserttimemodel->gettime($pro_id,$cat_id,$firstdate,$lastdate);
$data['whr'] = $whr;
//print_r($data); //working properly
echo json_encode($data);
exit();
}
JS:
$(document).ready(function(){
$("#cat").change(function(){
var catid = $(this).val();
var id = $('#project option:selected').val();
var dt = $('#period option:selected').val();
$.ajax({
url:"<?php echo base_url();?>/timesheet/test",
data:{cat:catid,id:id,dt:dt},
type:"POST",
dataType: "json",
success:function(data){
document.getElementById("res").innerHTML = data[0];
document.getElementById("res1").innerHTML = data[1];
}
});
});
});
答案 0 :(得分:0)
您的服务器端结构很奇怪。然而。 您必须以javascript格式访问您的数据
data.whr[0].whr;
data.whr[1].whr;
....
使用
console.log(data);
在浏览器的F12按键Web开发工具中查看javascript调试控制台中数据的结构
答案 1 :(得分:-2)
您需要解码&#34;数据&#34;在使用&#34; JSON.parse&#34;之前在Javascript。