【发布时间】:2015-10-01 22:10:19
【问题描述】:
我正在尝试在我的输入值更新时调用一个函数。 该函数将验证输入值并将标志设置为 true 或 false,该标志将用于 DOM 中的多个元素。
我一直在尝试建议的解决方案here:
<input data-bind="event: { change: value_changed }, value: saved_value, valueUpdate: 'afterkeydown'" />
但它似乎不适用于 afterKeyDown。如您在此处看到的,它仅在 unfocus 上调用该函数: http://jsfiddle.net/imac/hY5T2/142/
我做错了什么?
【问题讨论】:
-
试试这个 jsfiddle.net/hY5T2/145 。欢呼
-
valueUpdate 仅在按下键时更新可观察对象(如您的代码中指定的那样)。您可以尝试订阅 observable 并在那里检查必要的逻辑。
-
虽然你的 observable 在
afterkeydown之后更新,但change的工作方式不同,只有在失去焦点时才会触发。
标签: knockout.js knockout-3.0 knockout-3.2