0

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

我们在 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"))

我收到一个“bw”作为规则操作,而不是我想设置的“eq”。

谢谢!

4

2 回答 2

3

我已经更新了 MvcJqGrid(nuget 包也更新了)。到目前为止,您可以使用“SetSearchOption”为每列设置一个搜索选项。您的示例将如下所示:

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

让我知道这是否适合您。

于 2013-05-09T20:57:58.430 回答
0

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

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

更改"outputid"列的属性。在创建搜索工具栏之前(在调用filterToolbar方法之前)进行更改非常重要。如果您无法在创建搜索工具栏之前注入您的 JavaScript 代码,您可以稍后使用修改的属性使用destroyFilterToolbar方法重新创建它(请参阅答案拉取请求):

$("#grid").jqGrid("destroyFilterToolbar");
$("#grid").jqGrid("filterToolbar", { stringResult: true, defaultSearch: "cn" });
于 2013-05-04T10:44:35.483 回答