我正在尝试使用jquery在页面加载时在jqxgrid中显示数据库,但是屏幕没有显示任何内容。
我有几个页面可以应用这种技术,并且我已经设法使用javascript完成了一个页面。然后第二页使用jquery完成。但是在第三页(也使用jquery),我什么都没得到。
这是view_page.php中的jquery:
<html>.... //view_page./
$(document).ready(function () {
var param = '<?php echo $formdata->doc_num;?>';
var array_grid_key = <?php echo json_encode($v_arrayGridKey2);?>;
$.ajax({
url:"<?php echo base_url('index.php/px/pxq/sel_head');?>/"+param,
dataType: "json",
success:function(result){
var dataFields = new Array();
$("#ajax").html(result);
for(var i = 0;i<array_grid_key.length;i++){
var obj = {name: array_grid_key[i]};
dataFields.push(obj);
}
var source = {
datafields: dataFields,
localdata: result
};
var dataAdapter = new $.jqx.dataAdapter(source);
dataAdapter.dataBind();
var dataSource = {
datafields: dataFields,
localdata: result
};
var adapter = new $.jqx.dataAdapter(dataSource);
$("#data_grid").jqxGrid({ source: adapter });
}
});
});
....</html>
这是控制器:
public function sel_head($code){
$this->load->model('px');
$this->data['ajax'] = $this->px->querying(
'select t3.code as \'code\', t3.name as \'name\', t2.item_d1 as \'item_d1\', t2.item_d2 as \'item_d2\',t2.item_qty as \'item_qty\', t2.item_price as \'item_price\', t2.item_disc_pct1 as \'item_disc_pct1\', t2.item_disc_pct2 as \'item_disc_pct2\', t2.item_netprice as \'item_netprice\', t2.item_total as \'item_total\'
from spurc_h t1
inner join spurc_d t2 on t1.doc_id = t2.doc_id
inner join sttem_m t3 on t2.id = t3.id
inner join sbuss t4 on t4.buss_code = t1.buss_code
where doc_num = \''.$code.'\''
);
echo json_encode($this->data['ajax']);
}
最令人困惑的部分是为什么它适用于第二页,而不是第三页。
Chrome开发者工具显示它按预期返回查询结果(json格式),但我们无法使用上面的jquery将其放到jqxgrid中。
我想将它用作工具,因为需要像这样做很多页面。使用相同的技术将节省开发时间。
请告诉我我想念的是什么.. 感谢您的帮助:)