这就是我的所作所为:
<script>
$(document).ready(function () {
$("#grid").kendoGrid({
dataSource:{
transport: {
read: "<?php echo site_url('member/getMember'); ?>",
dataType: "jsonp"
},
schema:{
data: "data"
}
},
height: 500,
scrollable: true,
selectable: true
});
});
</script>
我的控制器功能:
public function getMember(){
$g = $this->members_model->getAllMember();
echo json_encode($g->result_array());
}
我的模特功能:
public function getAllMember(){
$sql = "SELECT * FROM member";
$result = $this->db->query($sql);
return $result;
}
答案 0 :(得分:1)
写“ json ”而不是“ jsonp ”
<script>
$(document).ready(function () {
$("#grid").kendoGrid({
dataSource:{
transport: {
read: "<?php echo site_url('member/getMember'); ?>",
dataType: "json"
},
schema:{
data: "data"
}
},
height: 500,
scrollable: true,
selectable: true
});
});
</script>
答案 1 :(得分:0)
您确定您的模型方法是返回数据吗?你的模型方法不应该这样吗?
public function getAllMember() {
$sql = "SELECT * FROM member";
$query = $this->db->query($sql);
return $query->result()
}
$这 - &GT; DB-&GT;查询(SQL $); &lt; - 这本身不会返回数据。
<强>更新强>
对不起。我刚刚注意到你在控制器方法中得到了结果。所以,你的模型方法很好。
您不应该从控制器回显任何内容。永远。永远不要那样做。让视图层处理它。
在控制器中渲染视图,如下所示:
public function getMember(){
$g = $this->members_model->getAllMember();
$data = $g->result_array();
$this->load->view('path/to/view/file', $data);
}
上面的代码可以使用,但你应该在模型层中使用result_array() - 而不是控制器。
您可以粘贴视图文件的其余部分吗?我认为这个问题可能特定于kendoGrid的jQuery插件,但我会看一点。