如何在KnockoutJS中正确使用可见绑定

时间:2013-08-10 03:19:31

标签: javascript .net knockout.js knockout-2.0

我希望.controls div只有在文本框中的值为_OTHER时才可见。这是我正在使用的代码:

<div class="controls" data-bind="
    visible: title == '_OTHER'
">            
    @Generic.Selection <i data-bind="text: $index() + 1"></i>
    <input type="text" id="inputAnswerContent" data-bind="value: title" />
    <a href="#" class="btn btn-small" data-bind="
        visible: $parent.requireOfferedAnswer, 
        click: $parent.addAnswer
    ">
        <i class="icon-plus"></i>
    </a>
</div>

但是,除_OTHER以外的所有值都可以看到它。

1 个答案:

答案 0 :(得分:0)

你想使用`visible:title()=='_ CONTHER'(括号)。

简化示例(jsfiddle):

HTML

<div class="controls" data-bind="visible: title() == '_OTHER'">            
hello world
</div>
<input type="text" data-bind="value : title"></input>

JS

function ViewModel() {
    this.title = ko.observable();
}

var vm = new ViewModel();

ko.applyBindings(vm);

在文本框中输入_OTHER以显示hello world