2012-01-12 175 views
1

我可以使用浏览器宽度自动调整大小的方式来设置JqGrid宽度。JqGrid宽度调整大小调整浏览器大小的问题

已尝试使用此功能。

autowidth:true, 
    ..... 
    $(window).bind('resize', function() { 
     $("#table").setGridWidth($("#table").width()); 
    }).trigger('resize'); 

调整大小的心不是工作正常,当我调整我希望网格相应地调整到浏览器的宽度的浏览器。

UPDATE:

$(function() { 
     $grid = $("#table"); 
     $grid.jqGrid({ 
      url: '../../Services/OrderService.asmx/getGlbOrders', 
      datatype: 'json', 
      mtype: 'POST', 
      ajaxGridOptions: { contentType: 'application/json; charset=utf-8' }, 
      serializeGridData: function (postData) { 

       if (postData.searchField === undefined) postData.searchField = null; 
       if (postData.searchString === undefined) postData.searchString = null; 
       if (postData.searchOper === undefined) postData.searchOper = null; 
       //if (postData.filters === undefined) postData.filters = null;     
       return JSON.stringify(postData); 
      }, 

      jsonReader: { 
       root: "d.rows", 
       page: "d.page", 
       total: "d.total", 
       records: "d.records", 
       id: "d.names" 
      }, 
      colModel: [ 
        { name: 'select', label: 'select', width: 50, 
         formatter: function radio(cellValue, option) { 
          return '<input type="radio" name="radio_' + option.gid + '" value=' + cellValue + ' />'; 
         } 
        }, 
        { name: 'code', label: 'Order ID' }, 
        { name: 'qty', label: 'Quantity' }, 
        { name: 'qtyr', label: 'Remaining Qty'}, 
        { name: 'uts', label: 'Units' }, 
        { name: 'status', label: 'Status' }, 
       ], 


      rowNum: 10, 
      rowList: [10, 20, 300], 
      sortname: 'name', 
      sortorder: "asc", 
      pager: "#pager", 
      viewrecords: true, 
      gridview: true, 
      rownumbers: true, 
      height: 250, 
      autowidth: true, 
      caption: 'Global Order List' 
     }).jqGrid('navGrid', '#pager', { edit: false, add: false, del: false, search: false }); 

    }) 


    $(window).bind('resize', function() { 
     $("#table").setGridWidth($("#table").width()); 
    }).trigger('resize'); 
+0

我假设这不适合你。你看到了什么行为和/或错误? – 2012-01-12 11:53:53

+0

@David:Yesitisnt按预期工作,当我调整浏览器的大小时,我希望网格根据浏览器宽度调整大小。 – 2012-01-12 11:59:08

+0

它似乎从[问题](http://stackoverflow.com/q/875225/315935)重复。 – Oleg 2012-01-12 12:35:55

回答

0

改变你的代码:

$(function() { 
     $grid = $("#table"); 
     $grid.jqGrid({ 
      // etc.. 
     }).jqGrid('navGrid', '#pager', { edit: false, add: false, del: false, search: false }); 

}) 

$(window).bind('resize', function() { 
    $("#table").setGridWidth($("#table").width()); 
}).trigger('resize'); 

到:

$(function() { 
     $grid = $("#table"); 
     $grid.jqGrid({ 
      // etc.. 
     }).jqGrid('navGrid', '#pager', { edit: false, add: false, del: false, search: false }); 

}); 

$(window).bind('resize', function() { 
    $("#table").setGridWidth($("#table").width()); 
}).trigger('resize'); 

你有你的jqGrid功能结束后,忘记了一个分号。然后,您的函数后面的代码被忽略。