Javascript 如何通过敲除设置visible=false
我已经发布了更详细的问题,这是非常明确和直截了当的 您好,我正在尝试使用knockout将list元素的值设置为false 这是我的HTMLJavascript 如何通过敲除设置visible=false,javascript,html,dom,knockout.js,Javascript,Html,Dom,Knockout.js,我已经发布了更详细的问题,这是非常明确和直截了当的 您好,我正在尝试使用knockout将list元素的值设置为false 这是我的HTML <li> <a onclick="log(this)" data-bind="visible: true, text: $data"></a> </li> 不要将可视绑定设置为true,将其设置为在viewModel中定义的变量。您还可以通过foreach绑定访问可
<li>
<a onclick="log(this)" data-bind="visible: true, text: $data"></a>
</li>
不要将可视绑定设置为true,将其设置为在viewModel中定义的变量。您还可以通过foreach绑定访问可观察数组的各个元素。最后,如果要使用$data,可以直接使用“.”运算符访问单个数组对象的属性。我在文章末尾引用的文档有更多信息。见下文:
<div data-bind="foreach: shouldShowMessageArray">
<div data-bind="visible: $data.shouldShowMessage">
Message goes here.
</div>
</div>
<script type="text/javascript">
var myViewModel;
$(document).ready(function(){
myViewModel = new viewModel();
function viewModel() {
this.shouldShowMessage = ko.observable(false) // Message initially visible
this.shouldShowMessageArray = ko.observableArray([
{shouldShowMessage: ko.observable(true)},
{shouldShowMessage: ko.observable(false)}
]);
}
ko.applyBindings(myViewModel);
});
</script>
信息就在这里。
var模型;
$(文档).ready(函数(){
myViewModel=新的viewModel();
函数viewModel(){
this.shouldShowMessage=ko.observable(false)//消息最初可见
this.shouldShowMessageArray=ko.observableArray([
{shouldShowMessage:ko.observable(true)},
{shouldShowMessage:ko.observable(false)}
]);
}
应用绑定(myViewModel);
});
绑定到属性,而不是直接绑定到
true
。如果它不是数组,这将起作用,它是数组,那么您将如何隐藏数组的元素?为了更清楚地说明,我使用$data获取数据,明白了。更新了我的答案。基本上,您可以直接从$data访问属性。如果我将元素推送到数组中,您会怎么做?我该如何给每个元素属性一个默认的真实可见的可观察的属性呢?多谢你有时间看这个
<div data-bind="foreach: shouldShowMessageArray">
<div data-bind="visible: $data.shouldShowMessage">
Message goes here.
</div>
</div>
<script type="text/javascript">
var myViewModel;
$(document).ready(function(){
myViewModel = new viewModel();
function viewModel() {
this.shouldShowMessage = ko.observable(false) // Message initially visible
this.shouldShowMessageArray = ko.observableArray([
{shouldShowMessage: ko.observable(true)},
{shouldShowMessage: ko.observable(false)}
]);
}
ko.applyBindings(myViewModel);
});
</script>