jqgridを使用していて、その中にサブグリッドを1つ追加しました。これは、次のようになります。
ご覧のとおり、
列が11と13の行はメイングリッド行です
そして、すべての行に関心のあるサブグリッドがあります。[レコードの追加]要素には、[サブグリッドのポップアップの追加]が表示されます。
サブグリッドのコードは次のようになります。
subGridRowExpanded: function(subgrid_id, row_id) {
var subgrid_table_id, pager_id;
subgrid_table_id = subgrid_id+"_t";
pager_id = "p_"+subgrid_table_id;
$("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table><div id='"+pager_id+"' class='scroll'></div>");
jQuery("#"+subgrid_table_id).jqGrid({
url:"shops?q=2&ShopID="+row_id,
datatype: "xml",
colNames: ['Interest'],
colModel: [
//{name:"Id",index:"ShopID",width:80,editable:false,editoptions:{readonly:false,size:40}}, //Shop ID not required
{name:"id",index:"id",editable:true,edittype:"select",editoptions:{dataUrl:'shops?q=3&ShopID='+row_id},editrules:{required:true}}
],
rowNum:10,
pager: pager_id,
width: '100%',
height: '100%',
scrollOffset: 0,
sortname: 'num',
sortorder: "asc",
height: '100%',
editurl:'shops?q=5&ShopID='+row_id
});
jQuery("#"+subgrid_table_id).jqGrid('navGrid',"#"+pager_id,{edit:false,add:true,del:true})
},
subGridRowColapsed: function(subgrid_id, row_id) {
// this function is called before removing the data
//var subgrid_table_id;
//subgrid_table_id = subgrid_id+"_t";
//jQuery("#"+subgrid_table_id).remove();
}
問題は、サブグリッドに複数の要素がある場合はそれを選択できますが(最新バージョンのChromeを使用しています)、驚くべきことにサブグリッドに要素が1つしかない場合は選択できます(色の違いに気付いた場合はサブグリッド要素を参照してください) 'Gifts'-行13の下で選択)そして一度選択すると'Gifts'を削除できます。
更新: FirefoxとIEでは、最初の行のみがサブグリッドから選択されます
コードに何か問題がありますか?サブグリッドに複数の要素があるのに、なぜ単一の要素を選択できないのですか?
あなたの時間を感謝します、ありがとう