より多くのデータを表示するために、既存のASP.NET MVC3WebGridを適応させています。現在、1レベルのデータが表示されていますが、グリッドに親子関係を表示する必要があります。これは可能ですか、それともサードパーティのコントロールを調べる必要がありますか、それとも自分でコントロールする必要がありますか?
2795 次
1 に答える
1
webgridにそれを単独で実行させたい場合、答えは直接不可能ではありません。このように実現できる単純なネストされたグリッド... RazorNested WebGrid
グリッド全体を別のグリッド内に配置するには、jQuery、AJAXの複数のビューを使用してこれを実現できます。行を展開したら、他のhtmlではなく子グリッドをレンダリングするajaxを使用して別のアクションを呼び出します。結果のhtmlを使用して、親グリッドテーブルの新しい行に挿入します。これらの行に何か...
$.ajax({
url: childGridUrlString,
type: 'post',
async: true,
timeout: 10 * 1000,
success: function (data, textStatus, jqXHR) {
if (!data.Status) {
var $tr = $obj.closest("tr", $("#parentgrid"));
var $newTr = "<tr><td colspan=\"4\">" + data + "</td></tr>";
$("<tr><td> </td><td colspan=\"3\">" + data + "</td></tr>").insertAfter($tr);
}
},
});
親グリッドと子グリッドにある列の数に応じて、colspanを処理します。重要なことは、WebGridの組み込みの並べ替え機能は、このタイプの親子グリッド表示では正しく機能しないことです。
もちろん、サードパーティのコントロールは常にオプションですが、コストも考慮する必要があり、それらにもコーディングが必要になります。
于 2011-09-06T06:19:11.337 に答える