不确定为什么以下Razor语法不起作用:
@Html.LabelFor(model => model.Description, new { @data_bind = "css: LabelCSS" })
如果我使用带有属性的常规HTML语法绑定到knockout,它可以工作:
<span data-bind="attr: { 'class': LabelCSS }">Description</span>
我的淘汰ViewModel:
function ViewModel(dataFromServer) {
var self = this;
self.EnableDesc = ko.observable(dataFromServer.EnableDesc);
self.LabelCSS = ko.computed(function () {
return self.EnableDesc() ? "control-label" : "control-label-gray";
}, self);
}
答案 0 :(得分:0)
感谢mxmissile回答我的问题:
要使用的语法是:
@ Html.LabelFor(model =&gt; model.Description,new {data_bind =&#34; attr:{&#39; class&#39 ;: LabelCSS}&#34;})