在<sjg:grid>中过滤,不区分大小写</sjg:grid>

时间:2012-06-25 07:36:29

标签: java jqgrid struts2

我正在使用struts2jquery网格,其中我给出了filter =“true”。所以它在客户端过滤数据。但它仅仅根据区分大小写进行过滤。我需要无数据地获取数据。那么我应该为此添加什么呢?期待一些建议。谢谢!!!

2 个答案:

答案 0 :(得分:0)

我找到了一个使用javaScript的解决方案:

<%@ taglib prefix="s" uri="/struts-tags"%>
<%@ taglib prefix="sj" uri="/struts-jquery-tags"%>
<%@ taglib prefix="sjg" uri="/struts-jquery-grid-tags"%>

   <s:url var="remoteurl" action="jsontable" />

    <sjg:grid id="gridtableID" 

        caption="Primjer JSON TABELE" 
        dataType="json"
        href="%{remoteurl}" 
        gridModel="gridModel" 
        viewrecords="true"
        pager="true"
        pagerPosition="centar"
        navigator="true"
        navigatorSearch="true"
        filter="true"
        filterOptions="{stringResult:true}"
        loadonce="true"

         >

        <sjg:gridColumn name="id"
            index="id" title="ID" 
            formatter="integer"
            search="false"
            searchoptions="{sopt:['cn','eq','ne','bw','bn','ew','en','nc']}"
            editable="false" />
        <sjg:gridColumn name="name" index="name" title="Name" sortable="true"
            search="true"
            searchoptions="{sopt:['cn','eq','ne','bw','bn','ew','en','nc']}" />
        <sjg:gridColumn name="country" index="country" title="Country"
            search="true"
            searchoptions="{sopt:['cn','eq','ne','bw','bn','ew','en','nc']}"/>
        <sjg:gridColumn name="city" index="city" title="City" search="true"
            searchoptions="{sopt:['cn','eq','ne','bw','bn','ew','en','nc']}" />
        <sjg:gridColumn name="creditLimit" index="creditLimit"
            title="Credit Limit" formatter="currency" search="true"
            searchoptions="{sopt:['cn','eq','ne','bw','bn','ew','en','nc']}"/>

    </sjg:grid>

    <script>
    $(document).ready(function(){
        $("#gridtableID").jqGrid('setGridParam', { ignoreCase: true});
        });
    </script>

答案 1 :(得分:0)

这可能有点晚,但这是一个更容易的解决方案:

第1步: 将onCompleteTopics添加到sgj:grid标记。

<sjg:grid
...
onCompleteTopics="loadComplete"
...
>

第2步: 使用以下代码将.subscribe添加到.jsp。

<script>
    $.subscribe('loadComplete', function (event, data){
         $("#gridtable").jqGrid('setGridParam', { ignoreCase: true});
    });
</script>

这应该会关闭网格顶部过滤器行的区分大小写。这仅适用于客户端过滤。