2011-12-04 124 views
3

如果表格包含大的多行文本列,則按jqgrid視圖工具欄按鈕將創建高度大且不帶滾動條的視圖窗口 。大部分數據都在屏幕之外,不可見。如何將滾動條添加到jqgrid視圖窗口並限制其高度

我嘗試添加滾動條和使用

jQuery.extend(jQuery.jgrid.view, { 
    savekey: [true, 13], 
    recreateForm: true, 
    closeOnEscape: true, 
    dataheight: screen.height-230, 
    height: 0.82* screen.height, 
    width: 0.96*screen.width, 
    top:5 
    }); 

限制其高度,但這些設置被忽略(它們爲編輯窗口的工作只有在使用jQuery.jgrid.edit)。

如何添加滾動條和嚴格視圖窗口高度,如果它包含更多的數據比適合屏幕?

回答

2

我建議從the answer得到演示並稍微擴展代碼。在該方法中beforeShowForm我建議包括附加線

$(this).children("span").css({ 
    overflow: "auto", 
    "text-align": "inherit", // overwrite 'text-align: "right"' if exist 
    display: "inline-block", 
    "max-height": "100px" 
}); 

你可以看到the demo結果。查看錶格的高度將是可變的,但每場的最大高度將被限制爲100px(見上max-height):

enter image description here

enter image description here

+0

謝謝。在我的情況下,多行文本列的寬度很大。在這種情況下,textarea右側滾動條的視圖形式是不可見的。如何增加視圖窗口寬度,並減少textarea寬度,使textarea右側垂直滾動條始終可見? – Andrus

+0

@Andrus:你可以爲'$(this).children(「span)設置的CSS選項列表添加類似於」「max-width」:「300px」或「width」:「300px」 「)'。 – Oleg

+0

我發現在navGrid視圖參數中指定視圖窗口尺寸有效。您建議的樣式從textaarea刪除換行符。我沒有看到有或沒有這種風格的佈局的任何差異。我沒有添加這種風格和beforeShowform到應用程序。無論如何,我認爲你的回答非常好,我標記並且贊成它。非常感謝您的幫助。 – Andrus