【问题标题】:Adding knockout if statement in a cshtml razor page在 cshtml 剃须刀页面中添加淘汰赛 if 语句
【发布时间】:2013-10-18 14:06:09
【问题描述】:

我想在标题标题前添加一个 if 语句检查用户数。

<div>
   <span  data-bind="text:Name()"></span> 
   <span class="userCount">(<span data-bind="text:UserCount()"></span>)</span>
</div>

<script type="text/html" id="list">
    //Want to add if statement here to check if the UserCount() is greater than 13
    <h3 id="letter" data-bind="text: Letter"></h3>
    ......
</script>

如何添加 if 语句来检查 usercount()?

视图模型:

var rViewModel = function (data) {
        var _self = this;
        _self.ContentRole = ko.observable(data.ContentRole);
        _self.Name = ko.observable(data.RoleName);
        _self.Rank = ko.observable(data.RoleRank);
        _self.UserCount = ko.observable(data.UserCount);
        _self.Users = ko.observableArray([]);
    };

【问题讨论】:

  • @MattBodily 我正在使用数据绑定(敲除)来获取像 Usercount 这样的信息,但我无法做到@if(data-bind="UserCount()")

标签: asp.net-mvc asp.net-mvc-4 razor knockout.js


【解决方案1】:
@if (Model.UserCount() > 13) {
    <h3 id="letter" data-bind="text: Letter"></h3>
}

【讨论】:

  • 对我来说,Model.UserCount() 不起作用,因为我正在执行 foreach:Titles,然后在其中我正在对 text:UserCount() 进行绑定。我尝试了Model.Titles.UserCount(),但没有编译。
  • Html 内容通常放置在脚本标签中,用于客户端模板。注意&lt;script type="text/html" id="list"&gt;中的类型。
  • Masriyah,您能否在这种情况下发布更多代码,包括 foreach ? JayC,感谢您的澄清。
【解决方案2】:

因为您在列表中,所以上下文就是列表。你需要像这样访问你的父视图模型:

$parent.UserCount() > 13

【讨论】:

    【解决方案3】:

    没有看到你的淘汰模型,你应该可以做这样的事情

    <!-- ko if: Users().count > 13 -->
        <h3 id="letter" data-bind="text: Letter"></h3>
    <!-- /ko -->
    

    【讨论】:

    • 我添加了我拥有 userCount 的 viewModel - 不确定是否需要另一块,但我喜欢这种方法并会试一试
    • 这是我收到的错误消息:Uncaught Error: Unable to parse bindings. Message: ReferenceError: UserCount is not defined; Bindings value: if: UserCount() &gt; 13
    • @Masriyah,根据您显示的 HTML,您没有绑定到您的模板。你能在 jsfiddle 中设置整个事情,这样我就可以更好地了解发生了什么
    【解决方案4】:

    剃刀视图中的If语句。

    @{
    var a = "No";
    
    if(a == "No")
    {
    //do something
    }
    else{
    //Do something else
    }
    
    }
    

    【讨论】:

    • 问题是如何添加一个 this isnt 的淘汰 if 语句
    猜你喜欢
    • 2018-10-09
    • 1970-01-01
    • 2014-06-16
    • 2016-12-05
    • 2013-03-04
    • 1970-01-01
    • 2016-10-17
    • 2013-12-27
    • 1970-01-01
    相关资源
    最近更新 更多