0

我是 knockoutJS 的新手,我真的很喜欢它。我的问题是我不知道如何在绑定中包含某种验证。我要做的是禁用按钮,除非文本字段中有文本。

<input type="text" name="answer" id="txtAnswer" placeholder="Answer..." data-bind="value: NewAnswer" />
<button data-inline="true" data-bind="click: addAnswer, enable: NewAnswer() != ''" >Add</button>

在我的视图模型中,我有 self.NewAnswer = ko.observable($("#txtAnswer").val())

我已经尝试了我能想到的一切,但无法使按钮响应。它似乎在页面加载时评估一次,然后没有任何变化。

任何帮助表示赞赏。

4

1 回答 1

2

你的 observable 看起来很时髦。在对observable. data-bind您可以通过属性将 observable 链接到元素:

self.NewAnswer = ko.observable(''); //replace '' with any default value you want

然后你的标记:

<input type="text" name="answer" id="txtAnswer" placeholder="Answer..." data-bind="value: NewAnswer" />

编辑

这是一个 jsFiddle 来演示工作示例:http: //jsfiddle.net/c6uts/

于 2013-09-24T17:57:01.263 回答