【问题标题】:How do I check an Ienumerable for a specific value in razor view?如何在剃刀视图中检查 Ienumerable 的特定值?
【发布时间】:2015-04-26 20:20:33
【问题描述】:

我的模型中有一个 Ienumerable,我返回到我的视图,并且在视图中我想使用 jquery this.value(选择列表)检查 Ienumerable 中的特定值。基本上,如果从与 Ienumerable 中的任何值匹配的选择框中选择了一个特定值,那么我将在我的流程的下一步显示一个复选框。

像这样……

$('#selectList').onChange(function {
if(@Model.IenumHere.contains(this.value)
{ 显示复选框 })

});

这不起作用,因为 jquery 没有看到 Ienum 中的值。

【问题讨论】:

  • 这与 jQuery 无关——Razor 都是服务器端的——出于同样的原因,你不能将两者混合在一起
  • 如果循环遍历 Ienum 并在输入字段中显示它们,我可以看到 Ienum 中的值,那么如何直接查询 Ienum 并检查视图中的值?
  • 你不能 - 但是你可以从你的 ienumerable 中填充一个 js 集合 - 你可以访问的那个

标签: jquery razor ienumerable contains


【解决方案1】:

好的,想通了。

正如 BrokenGlass 所说,我必须从服务器端到客户端获取 Ienum 数据才能查询它。然后只运行一个 inArray 来检查值...

    var rids = [];
        @foreach (var item in Model.IenumHere)
        {
            <text>rids.push('@item');</text>
        }

        if ($.inArray(this.value, rids) != -1 && this.value != "") {
            $("#checkBox").prop('disabled', false);
    }

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2016-11-12
    • 1970-01-01
    • 2011-11-25
    • 2018-04-24
    • 2018-10-30
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多