2012-03-29 73 views
0

请问jqGrid是否有任何回调单字段搜索后?jqGrid - 在搜索单个字段搜索前获取记录

onSearch回调仅在单击“搜索”按钮时触发,因此如果您想要获取$("#grid").getGridParam('records');的搜索记录,您将获得先前请求的行数。

编辑:

这是我用onSearch

onSearch:function(){ 
    var ofilter = $("#competitors").getGridParam("postData"); 
    var jqSearchQuery = ""; 
    $.each(ofilter, function(key, val) { jqSearchQuery += key + '=' + val + '&' ;}) 
    selectopts = new Array(); 
    selectopts['cn'] = 'contiene'; 
    selectopts['bw'] = 'empiece por'; 
    selectopts['eq'] = 'igual'; 
    selectopts['ne'] = 'no igual'; 
    selectopts['lt'] = 'menor que'; 
    selectopts['gt'] = 'mayor que'; 
    selectopts['ew'] = 'termina por'; 
    var records = $("#competitors").getGridParam('records'); 

    searchResult = records+" resultados para la b&uacute;squeda <b>\""+ofilter.searchField+" "+selectopts[ofilter.searchOper]+" "+ofilter.searchString+"\"</b>"; 
    $('#searchResult').html('<p>'+searchResult+'</p>'); 
} 

回答

0

您可以使用onSearch回调将被称为之前开始新的过滤选项重新加载代码。

+0

感谢您的回答Oleg,我已经编辑并添加了代码......请看一看,因为在此回调中,我从网格中获取以前查询的记录。 – Ezep 2012-03-30 14:21:14

+0

@Ezep:对不起,但可能更多的是语言问题。你想显示以前请求的行吗? 'onSearch'为您提供了最后一次保存以前查询记录数量的可能性。如果你想在应用新过滤器后显示记录数量*,你应该在'loadComplete'内部完成。 – Oleg 2012-03-30 15:42:40

+0

对不起!我只是有一个错误的错字...是的,loadComplete是我正在寻找! – Ezep 2012-03-30 20:26:52