Knockout v3.4.0 中文版教程-10-绑定-控制文本内容和外观-visible绑定

4.绑定

1. 控制文本内容和外观

1. visible绑定

目的
visible绑定可以根据你传入绑定的值控制关联的DOM元素显示或隐藏。
例子

<div data-bind="visible: shouldShowMessage">
    You will see this message only when "shouldShowMessage" holds a true value.
</div>
 
<script type="text/javascript">
    var viewModel = {
        shouldShowMessage: ko.observable(true) // Message initially visible
    };
    viewModel.shouldShowMessage(false); // ... now it's hidden
    viewModel.shouldShowMessage(true); // ... now it's visible again
</script>

参数

  • 主参数
    • 当参数被解析为false(比如参数为false,数字0null,undefind),绑定会设置yourElement.style.display的值为none,使之隐藏。该优先级高于你通过css定义的样式。
    • 当参数被解析为true(比如true,非空对象或数组),绑定会移除yourElement.style.display的值,这样就会变为可见
    • 注意,你用css规则配置的任何显示样式都会被应用(所以比如像x { display:table-row } 这样的规则,绑定也能很好地一起工作)。
    • 如果参数是一个监控值,当值发生改变的时候,元素的可见性会更新。如果参数不是监控对象,它只会设置元素可见性一次,之后有改动不会更新样式。
  • 额外参数

    • 注意:使用函数或表达式控制元素可见性

你可以使用javascript函数或任何表达式作为参数值。如果这样,KO会运行函数或对表达式求值,然后由结果决定元素是否可见。

例子:

<div data-bind="visible: myValues().length > 0">
    You will see this message only when 'myValues' has at least one member.
</div> 
<script type="text/javascript">
    var viewModel = {
        myValues: ko.observableArray([]) // Initially empty, so message hidden
    };
    viewModel.myValues.push("some value"); // Now visible
</script>

依赖

只有核心KO库

posted @   DHclly  阅读(193)  评论(0编辑  收藏  举报
编辑推荐:
· Linux系列:如何用heaptrack跟踪.NET程序的非托管内存泄露
· 开发者必知的日志记录最佳实践
· SQL Server 2025 AI相关能力初探
· Linux系列:如何用 C#调用 C方法造成内存泄露
· AI与.NET技术实操系列(二):开始使用ML.NET
阅读排行:
· 被坑几百块钱后,我竟然真的恢复了删除的微信聊天记录!
· 没有Manus邀请码?试试免邀请码的MGX或者开源的OpenManus吧
· 【自荐】一款简洁、开源的在线白板工具 Drawnix
· 园子的第一款AI主题卫衣上架——"HELLO! HOW CAN I ASSIST YOU TODAY
· Docker 太简单,K8s 太复杂?w7panel 让容器管理更轻松!
点击右上角即可分享
微信分享提示