我的表单上有一个“保存”按钮,具有敲除启用绑定功能。我将valueUpdate:'keypress'添加到我的knockout绑定表达式中,希望在按键上启用保存按钮。我有一个带有值敲除绑定的简单输入文本框。相反,页面仍然要求用户单击“保存”按钮才能启用。 HTML下面。当用户输入输入时,canSave变为true,启用保存按钮。
<button data-bind="click: save, enable: canSave, valueUpdate: 'keypress'">Save</button>
<h3><strong>First Name: <input data-bind="value: firstName"></strong></h3>
答案 0 :(得分:5)
valueUpdate
绑定只有value
绑定才有意义;它应该继续你的输入,而不是你的按钮。
<button data-bind="click: save, enable: canSave">Save</button>
<h3><strong>First Name: <input data-bind="value: firstName, valueUpdate: 'keypress'"></strong></h3>
另外,如果您使用足够新的浏览器支持valueUpdate: 'input'
,或者textInput
binding,请考虑{{1}},如果您使用的是KO&gt; 3.2
答案 1 :(得分:0)
试试这个:
<button data-bind="click: save, enable: firstName().length > 0">Save</button>
<h3><strong>First Name: <input data-bind="value: firstName, valueUpdate:'keypress'"></strong></h3>
从您看来是代码,firstName
是一个可观察的,如果是这样,那么上面的代码就会做你需要的。如果没有输入,它将禁用该按钮,否则启用它。