Web ページに階層グリッドを使用しました。ここでは、各行で印刷ボタンを使用して行データを印刷しました。しかし、このコードを使用して最初の子データを取得することはできません。
var dataItem = $(e.target).closest('td').siblings(':first-child').text();
最初の列のデータを取得するにはどうすればよいですか。
Web ページに階層グリッドを使用しました。ここでは、各行で印刷ボタンを使用して行データを印刷しました。しかし、このコードを使用して最初の子データを取得することはできません。
var dataItem = $(e.target).closest('td').siblings(':first-child').text();
最初の列のデータを取得するにはどうすればよいですか。
詳細グリッドからマスター レコードにアクセスする場合、簡単な方法は親に関する情報 (たとえばid
) を保持し、それを使用することです。
そうは言っても、それを取得するために HTML - DOM を使用したい場合は、次のことを行う必要があります。
まず、マスター グリッドで詳細グリッドを含む行を見つけます。
var row = $(e.target).closest(".k-detail-row");
次に、前の兄弟 (マスター レコードを含む行) を見つけます。
var master = myRow.prev();
これで、モデル内のデータまたはグリッドからのテキストのいずれかを取得できますが、マスター行の最初のセルが詳細を折りたたんだり展開したりするためのハンドラーであることを覚えておく必要があります
var item = grid.dataItem(master);
var text = master.find("td:nth(1)");
ここでの実行例: http://jsfiddle.net/OnaBai/Wzr46/2/