2011-05-24 93 views
0

jqGrid是在網頁中創建的。如果頁面寬度減小,則最右邊的列不再可訪問。 如何將水平滾動條添加到jqGrid中,以便如果頁面寬度較小,jqGrid可以水平滾動 以允許訪問所有列?jqGrid:如何添加水平工具欄

  grid.jqGrid({ 
      url: '<%= ResolveUrl("~/Grid/GetData?_entity=Strings")%>', 
      datatype: "json", 
      mtype: 'POST', 
      scroll: 1, 
      autoencode: true, 

      height: 350, 
      autowidth: true, 

回答

0

您可以嘗試類似的方法,但在這種情況下,您將使用網格的滾動條而不是div溢出。

的想法是調整自身使其顯示滾動條如果bouderies比它的內容更小的網格。爲了正確工作,列必須具有選項fixed:true,否則它們將調整自己以適應網格的寬度。

聲明DOM如下:

<div id="grid1container" style="width: 100%;"> 
    <table id="grid1"></table> 
    <div id="grid1pager"></div> 
</div> 

的代碼的javascrip然後添加到頁面中:

$(window).resize(function() { ResizeGrid1() }); 
function ResizeGrid1() { 
    $('#grid1container').height($(window).height() - 55); 

    $('#grid1').jqGrid() 
     .setGridWidth($('#grid1container').width() - 2) 
     .setGridHeight($('#grid1container').height()); 
} 

在這裏,我操縱網格的高度也一樣,如果你不希望它只需刪除setGridHeight行。

+0

@AlexCode:優秀的解決方案。如果文本導航工具欄按鈕定義的區域設置文件或使用 'grid.navGrid( 「#尋呼機」,{ 的EditText: 「更改」, addtext: 「追加」, deltext: 「刪除」, SEARCHTEXT: 「搜索」, refreshtext:。?「刷新全網」 } ....' ResizeGrid1繪製重疊按鈕按鈕寬度太小,如何強制正確的按鈕,導航工具欄 – Andrus 2011-05-28 09:28:36

+1

我有這個問題,並發現這個問題是由網格的初始寬度引起的,也就是您在網格初始聲明中放置的那個網格。總之,網格完全擰緊了導航欄按鈕的寬度,並且還浮動了左側的導航控件。 這是怎麼回事嗎? 試着將網格的初始寬度設置爲500或更高。這個沒有任何意義,我知道,試試吧! :) – AlexCode 2011-05-28 18:23:26

+1

這裏是我自己對這個問題的線程: http://stackoverflow.com/questions/6027307/jqgrid-navigation-bar-not-rendering-correctly – AlexCode 2011-05-28 18:24:28

0

我發現這個解決方案,但它不完善,因爲在FF4窗口停止報告寬度調整大小波紋535px ...不知道爲什麼。

我的想法是包裹電網DIV內並將其設置爲溢出:汽車;寬度:100%

<div id="grid1container" style="width: 100%; overflow: auto;"> 
    <table id="grid1"></table> 
    <div id="grid1pager"></div> 
</div> 
+0

jqGrid列寬和總寬度是固定的。這會導致垂直工具欄從右側的可見區域移出。如果jqGrid寬度大於可見區域,如何啓用使用垂直滾動條滾動? – Andrus 2011-05-26 07:25:29

+0

使用此功能,在水平滾動工具欄按鈕或文本變得不可見時,它也會滾動出來。我試圖 '

' 但導航滾動條仍然滾出。如何使工具欄按鈕始終可見? – Andrus 2011-05-26 07:40:27