2011-07-07 11 views
2

私はサブグリッドを持つjqGridを持っています。サブグリッドの行をクリックすると、メイングリッドの同じ行が選択されます。私は本当にその理由を知らない。jqGrid with subGridエラーのある行の選択

I持って のjQuery 1.4.3 jqueryのUI-1.8.13 jqGridここ

4.1.1コードです:

$("#customer").jqGrid({ 
    url:'/datasnap/rest/TMdsrl/CustomerTable/' + SessionData.SessionName, 
    datatype: "json", 
    mtype: 'GET', 
    colNames:['', '@lang.company','@lang.address', '@lang.zipcode', '@lang.city', '@lang.state', '@lang.vatid_code', '@lang.fiscal_code'], 
    colModel:[ 
    {name:'CUSTOMER_ID',index:'CUSTOMER_ID', width:0, hidden:true}, 
    {name:'COMPANY',index:'COMPANY', width:150}, 
    {name:'ADDRESS',index:'ADDRESS', width:150}, 
    {name:'ZIPCODE',index:'ZIPCODE', width:50}, 
    {name:'CITY',index:'CITY', width:100}, 
    {name:'STATE',index:'STATE', width:30}, 
    {name:'VATID_CODE',index:'VATID_CODE', width:90}, 
    {name:'FISCAL_CODE',index:'FISCAL_CODE', width:90} 
    ], 
    rowNum:5, 
    rowList:[5,10,20], 
    pager: '#customer_pager', 
    sortname: 'COMPANY', 
    sortorder: "asc", 
    multiselect: false, 
    height: 250, 
    caption: "@lang.customer_title", 
    subGrid: true, 
    // define the icons in subgrid 
    subGridOptions: { 
     "plusicon" : "ui-icon-triangle-1-e", 
     "minusicon" : "ui-icon-triangle-1-s", 
     "openicon" : "ui-icon-arrowreturn-1-e" 
    }, 
    subGridRowExpanded: function(subgrid_id, row_number) { 
     var subgrid_table_id, subpager_id; 
     var sub_rowdata = $("#customer").jqGrid('getRowData', row_number); 
     subgrid_table_id = subgrid_id+"_t"; 
     subpager_id = "p_"+subgrid_table_id; 
     $("#"+subgrid_id).html("<table id='"+subgrid_table_id+"' class='scroll'></table> <div id='"+subpager_id+"' class='scroll'></div>"); 
     $("#"+subgrid_table_id).jqGrid({ 
      url:'/datasnap/rest/TMdsrl/ContactForCustomerTable/' + SessionData.SessionName + '/' + sub_rowdata.CUSTOMER_ID, 
      datatype: 'json', 
      mtype: 'GET', 
      colNames: ['','@lang.fullname','@lang.email','@lang.phone','@lang.cellphone', '@lang.newsletter'], 
      colModel: [ 
       {name:'CONTACT_ID',index:'CONTACT_ID',width:0, hidden: true}, 
       {name:'FULLNAME',index:'LASTNAME', width:150}, 
       {name:'EMAIL',index:'EMAIL', width:150}, 
       {name:'PHONE',index:'PHONE', width:150}, 
       {name:'CELLPHONE',index:'CELLPHONE',width:150}, 
       {name:'NEWSLETTER',index:'NEWSLETTER',width:20}, 
      ], 
      rowNum:5, 
      pager: subpager_id, 
      sortname: 'FULLNAME', 
      sortorder: 'asc', 
      height: '100%' 
     }); 
     $("#"+subgrid_table_id).jqGrid('navGrid',"#"+subpager_id, {edit:false,add:false,del:false,search:false}) 
    } 

はあなたの助けをありがとう

を解決 問題は、メイングリッドの行とサブグリッドの行が同じIDを持つことでした。私はJSONのサブグリッドに異なるIDを与えることを解決しました。

+0

答えは質問の一部ではなく回答として投稿してください。 次に、正解として選択してください。 – Dementic

答えて

0

(。OPで簡潔に答えてコミュニティのwikiの答えとして、ここで転写さQuestion with no answers, but issue solved in the comments (or extended in chat)を参照してください)

OPは書きました:

を問題は、メイングリッドの行とサブグリッドの行ということでした同じIDを持っていた!私はJSONのサブグリッドに異なるIDを与えることを解決しました。