css 绑定中的自定义 class 名称
Custom class name in css binding
我有一个这样的可观察数组:
arrayName = ko.observableArray([
{name: First Name, type: normal},
{name: Second Name, type: low},
{name: Third Name, type: high}]);
并想像这样设置我的 DOM 元素的 class:
<div data-bind="foreach: arrayName">
<div data-bind="text: name"> </div>
<div data-bind="css: type"> </div>
</div>
有人知道如何让它成为可能吗?
您的示例有效,只需要为每个 属性:
的字符串添加引号
<div data-bind="foreach: arrayName">
<div data-bind="text: name"> </div>
<div data-bind="css: type"> </div>
</div>
<script>
function vm (){
this.arrayName = ko.observableArray([
{name: "First Name", type: "normal"},
{name: "Second Name", type: "low"},
{name: "Third Name", type: "high" }]);
}
ko.applyBindings(new vm());
</script>
尝试使用这个:
HTML:
<div data-bind="foreach: arrayName">
<div data-bind="text: name, css: type"> </div>
</div>
脚本:
var myModel = function() {
this.arrayName = ko.observableArray([
{name: "First Name", type: "normal"},
{name: "Second Name", type: "low"},
{name: "Third Name", type: "high"}]);
}
ko.applyBindings(new myModel());
首先,classes 的所有值都应以字符串表示形式定义。
您将 class(在您的示例中)添加到空的 div,它没有任何内容,您也看不到它,如果我理解正确,您应该添加class 到您添加名称 属性 的同一个 div。
HTH。
我有一个这样的可观察数组:
arrayName = ko.observableArray([
{name: First Name, type: normal},
{name: Second Name, type: low},
{name: Third Name, type: high}]);
并想像这样设置我的 DOM 元素的 class:
<div data-bind="foreach: arrayName">
<div data-bind="text: name"> </div>
<div data-bind="css: type"> </div>
</div>
有人知道如何让它成为可能吗?
您的示例有效,只需要为每个 属性:
的字符串添加引号<div data-bind="foreach: arrayName">
<div data-bind="text: name"> </div>
<div data-bind="css: type"> </div>
</div>
<script>
function vm (){
this.arrayName = ko.observableArray([
{name: "First Name", type: "normal"},
{name: "Second Name", type: "low"},
{name: "Third Name", type: "high" }]);
}
ko.applyBindings(new vm());
</script>
尝试使用这个:
HTML:
<div data-bind="foreach: arrayName">
<div data-bind="text: name, css: type"> </div>
</div>
脚本:
var myModel = function() {
this.arrayName = ko.observableArray([
{name: "First Name", type: "normal"},
{name: "Second Name", type: "low"},
{name: "Third Name", type: "high"}]);
}
ko.applyBindings(new myModel());
首先,classes 的所有值都应以字符串表示形式定义。
您将 class(在您的示例中)添加到空的 div,它没有任何内容,您也看不到它,如果我理解正确,您应该添加class 到您添加名称 属性 的同一个 div。
HTH。