addrow jqxgrid with ajax

时间:2014-01-24 17:39:15

标签: jquery ajax codeigniter jqxgrid

我正在尝试使用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中。

我想将它用作工具,因为需要像这样做很多页面。使用相同的技术将节省开发时间。

请告诉我我想念的是什么.. 感谢您的帮助:)

0 个答案:

没有答案