jQuery EasyUI データグリッドを使用して、ユーザーにデータを表示しています。以下を使用して、データグリッドで選択された行のデータを取得する方法を知っています。
var selectedRow = $('#my_datagrid_id').datagrid('getSelected');
しかし、データグリッド内の特定の行をその ID などで (行を選択せずに) 取得する方法を知っている人はいますか?
これを行う方法がどこにも見つからないようです
前もって感謝します
jQuery EasyUI データグリッドを使用して、ユーザーにデータを表示しています。以下を使用して、データグリッドで選択された行のデータを取得する方法を知っています。
var selectedRow = $('#my_datagrid_id').datagrid('getSelected');
しかし、データグリッド内の特定の行をその ID などで (行を選択せずに) 取得する方法を知っている人はいますか?
これを行う方法がどこにも見つからないようです
前もって感謝します
Try this one, then I think you will know what to do next :)
var myData = $('#my_datagrid_id').datagrid('getData');
alert('myData : ' + JSON.stringify(myData));
やってみてもらえますか
IDが「01」の行を取得する場合は、
var row=$('#my_datagrid_id').datagrid('getRows')[$('#my_datagrid_id').datagrid('getRowIndex','01')];
あなたは...getRows
を使用してすべての行を取得し、行をループすることができます..
var rows=$('#my_datagrid_id').datagrid('getRows');
if(rows.length == 0)
{
alert('no row present');
}else{
for(i=0;i<rows.length;i++)
{
//do your stuff here.. if your want particular row then u can use if condition
}
}
また
必要な行のインデックスがわかっている場合は、getRowIndex
メソッドを使用できます
こちらのドキュメントをご覧ください
すべての行を見つけることがわかっているので、これを試してください:
var allRows = $('#my_datagrid_id').datagrid('getRows');
選択した行を取得するには:
var selectedRows = $('#my_datagrid_id').datagrid('getSelections');
特定の行のインデックスを知っているとします。このインデックスを 5 と仮定します。この特別な行が選択されているかどうかを確認するには、次のようにします。
var specialRow= $.grep(selectedRows , function (e) {
return e == allRows[5];
});
if(specialRow.length>0)
alert('Voila! The Row is selected');
else
alert('Nope! The Row is not selected');
配列内 (この$.grep
コンテキストでは、選択された行内) で検索できます。特定の行が配列内にある場合 (選択された行)、塗りつぶされた specialRow 配列が返されます。