2013-05-04 61 views
0

我找不到为列设置搜索选项的方法吗?它似乎是默认设置的,我无法改变它。设置MvcJqGrid中列的搜索选项

我们在jqGrid的此选项:

{ name: "outputid", index: "outputid", width: 30, searchoptions: { sopt: ['eq']} } 

当MvcJqGrid这样做:

.AddColumn(new Column("promoDate").SetAlign(MvcJqGrid.Enums.Align.Center).SetLabel("Fecha Ingreso").SetSearchType(Searchtype.Datepicker).SetSearchDateFormat("yy-mm-dd")) 

我收到一个 '体重' 为规则运算,而不是 'EQ',因为我想组。

谢谢!

+0

你的意思是你不能在列上搜索,或者执行的搜索类型不是你想要的? – Mark 2013-05-04 04:01:15

+0

你说的第二件事 – Sanchitos 2013-05-10 05:24:34

回答

3

我已经更新MvcJqGrid(NuGet包也被更新) 。截至目前,您可以使用“SetSearchOption”为每列设置一个searchoption。你的例子看起来像这样:

.AddColumn(new Column("promoDate") 
    .SetAlign(MvcJqGrid.Enums.Align.Center) 
    .SetLabel("Fecha Ingreso") 
    .SetSearchType(Searchtype.Datepicker) 
    .SetSearchDateFormat("yy-mm-dd") 
    .SetSearchOption(SearchOptions.Equal)) 

让我知道这是否适合你。

+0

工作很好!,非常感谢你Robin – Sanchitos 2013-05-10 06:01:16

+0

@Robin van der Knaap,不,它没有,大约5分钟前我用nuget更新,它不起作用。我也需要SearchOption,请帮助 – Roar 2013-05-10 07:47:18

+0

@Roar你能解释一下什么是行不通的吗?您可以使用一些示例代码在github上创建问题。 https://github.com/robinvanderknaap/MvcJqGrid/issues?direction=desc&sort=created&state=open – 2013-05-10 07:56:28

0

首先我应该提一下,我自己并没有使用MvcJqGrid。为不同列设置不同的sopt选项非常重要,特别是在使用工具栏搜索的情况下。看起来MvcJqGrid不能为你提供足够的可能性来做到这一点。尽管如此,它看起来让MvcJqGrid为你生成一些JavaScript代码。所以,如果你不能生成你需要的代码,那么你仍然可以在之后更改网格的一些属性。例如

$("#grid").jqGrid("setColProp", "outputid", { searchoptions: { sopt: ['eq']} }); 

更改"outputid"列的属性。在之前创建(在方法filterToolbar之前)将被调用的搜索工具栏之前更改是非常重要的。如果您无法在创建搜索工具栏之前注入你的JavaScript代码,你可以使用destroyFilterToolbar法修改的属性后重新创建(见the answerthe pull request):

$("#grid").jqGrid("destroyFilterToolbar"); 
$("#grid").jqGrid("filterToolbar", { stringResult: true, defaultSearch: "cn" });