【问题标题】:Set search options for columns in MvcJqGrid为 MvcJqGrid 中的列设置搜索选项
【发布时间】:2013-04-28 12:52:15
【问题描述】:

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

我们在 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”。

谢谢!

【问题讨论】:

  • 您的意思是您无法搜索列,或者执行的搜索类型不是您想要的?
  • 你说的第二件事

标签: jqgrid mvcjqgrid


【解决方案1】:

我已经更新了 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))

让我知道这是否适合你。

【讨论】:

  • 工作得很好!非常感谢罗宾
  • @Robin van der Knaap,不,它没有,大约 5 分钟前我用 nuget 进行了更新,但它不起作用。我也需要 SearchOption,请帮助
  • @Roar 你能解释一下什么不起作用吗?您可以使用一些示例代码在 github 上创建问题。 github.com/robinvanderknaap/MvcJqGrid/…
  • 如果我们有 SearchOptions 枚举,为什么我们没有 MvcJqGrid.Rule 属性 op 作为枚举类型,现在它是字符串
  • @RobinvanderKnaap 在我的剃须刀引擎中我不能 .SetSearchOption(SearchOptions.Equal) 智能感知中没有选项
【解决方案2】:

首先我应该提到我自己不使用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" });

【讨论】:

    猜你喜欢
    • 2015-05-27
    • 2012-06-16
    • 1970-01-01
    • 2015-02-07
    • 2014-03-10
    • 2014-12-23
    • 2016-06-08
    • 2010-11-11
    • 1970-01-01
    相关资源
    最近更新 更多