jQuery の JQGrid を使用中に奇妙な問題が発生しました。次のフラグメント コードはそれを作成するためのものです。
grid= jQuery("#grid_id").jqGrid({
data : response.list,
datatype : "local",
colNames : columnNames,
colModel : [ {....}],
rowNum : 30,
width : $("#grid_id").width(),
height: $("#grid_page").height(),
rowList : [ 30, 100, 150 ],
pager : "#grid_page",
sortname : 'name',
viewrecords : true,
sortorder : "desc",
shrinkToFit: false,
rownumbers: true,
altRows:true,
caption: "Sample Grid"
});
この問題には 3 つの症状があります。
1、このグリッドには 35 を超える列があり、各列の幅は 100 PX を超えており、このグリッドの幅は 1000 PX に固定されているため、ユーザーがすべての列を表示できるようにグリッドにスクロール バーが表示されます。(ご覧のとおり、グリッドの幅と高さを固定値で設定しています)
2, このグリッドは最初はうまく機能しますが、2 回目以降の更新ではヘッダーとコンテンツが失われます。
3、幅の設定にコメントしようとしています。つまり、このグリッドに幅を設定していません。最初でも2回目でも問題なく動作しますが、グリッドの幅はすべての合計です列(3500PX)、ページ全体を醜く拡大します。
grid= jQuery("#grid_id").jqGrid({
data : response.list,
datatype : "local",
colNames : columnNames,
colModel : [ {....}],
rowNum : 30,
// width : $("#grid_id").width(), COMMENT it.
height: $("#grid_page").height(),
rowList : [ 30, 100, 150 ],
pager : "#grid_page",
sortname : 'name',
viewrecords : true,
sortorder : "desc",
shrinkToFit: false,
rownumbers: true,
altRows:true,
caption: "Sample Grid"
});
だから私が聞きたい質問は、幅と高さをjQuery JQGridに設定するための最良の解決策は何ですか? それらをグリッドにどのように設定する必要がありますか?
簡単に言えば、多くの列を持つグリッドを X スクロールバーで動作させるにはどうすればよいでしょうか?