2013-10-02 48 views
1

我對使用jqxGridjqWidgets有一些疑問。 我試圖從另一個頁面動態選擇我的表的一行。我自己解釋一下:通過jqxGrid中的一個單元格的值選擇一行

我的第一個頁面包含一個用戶列表。我希望當我在這個列表中選擇一個用戶時,它會打開一個新頁面,例如,我的用戶的ID通過PHP以GET形式返回。然後,我想生成一個新的網格,信息較少,但用戶已選擇。

我已經找到了如何通過她的指數$('#grid').jqxGrid('selectrow', 10);選擇一行,但它不工作,因爲如果一個表進行排序或篩選,該指數被改變......

那麼,有沒有什麼辦法去做這個 ?

下面的代碼選擇上第一臺行時至極叫做:

$('#search_right').bind('rowselect', function(event){ 
    var iSocID = $('#search_right').jqxGrid('getcellvalue', event.args.rowindex, 'id'); 
    $("#soci_right").load('activites/soc.search.php?a=form&id='+iSocID); 
    $('#content').jqxTabs('select', 3); 
}); 

這是我的第二個列表的生成代碼:

var url = 'activites/soc.search.php'; 
    var source = { 
     datatype: "json", 
       datafields: [ 
        { name: 'name', type: 'string'}, 
        { name: 'id', type: 'int'}, 
       ], 
       id: 'id', 
       url: url, 
       root: 'data' 
    }; 

    dataSource = new $.jqx.dataAdapter(source); 

    $("#soci_table").jqxGrid({ 
     source: dataSource, 
     theme: jqxGlobalTheme, 
     columnsresize: true, 
     sortable: true, 
     filterable: true, 
     showfilterrow: true, 
     columns: [ 
      { text: 'Name', dataField: 'name'},  
      { text: 'ID', dataField: 'id', hidden:true}, 
     ] 
    }); 

回答

1

jqWidgets的支持物接觸後(誰無法幫助我......)我做了一些小技巧,但是我認爲jqWidget應該將此添加爲jqxGrid的默認功能!

我把你的代碼粘貼在這裏,希望它能幫助你們中的一些人!

$('#search_right').bind('rowselect', function(event){ 
    var iSocID = $('#search_right').jqxGrid('getcellvalue', event.args.rowindex, 'id'); 

     // Create filter 
     var filtergroup = new $.jqx.filter(); 
     var filtervalue = iSocID; 
     var filtercondition = 'EQUAL'; 

     var filter1 = filtergroup.createfilter('stringfilter', filtervalue, filtercondition); 

     var filter_or_operator = 1; 
     filtergroup.addfilter(filter_or_operator, filter1); 

     $("#soci_table").jqxGrid('addfilter', 'id', filtergroup); 

     // Apply filter 

     $("#soci_table").jqxGrid('applyfilters'); 

     // Select row 

     $('#soci_table').jqxGrid('selectrow', 0); 

     // Remove filter 

     $("#soci_table").jqxGrid('clearfilters'); 
    }); 
相關問題