如果我要在keydown事件之外更新textarea,则不会重新绑定我的observable。
我尝试调用model.WrittenContent.valueHasMutated()
来刷新textarea 而不是 observable。
我正在使用我认为目前做到这一点的黑客行为,但我不愿意这样做......
model.WrittenContent($('#my-input').val());
我可以获得淘汰赛来重新评估textarea的价值吗?
答案 0 :(得分:1)
问题似乎在于,无论你做什么来更新textarea都不会导致textarea发出绑定正在侦听的任何类型的事件,因此Knockout无法知道它需要更新任何可观测量。
你可以做的最好的事情可能是
$('#my-input').change();
假设change
参数设置为valueUpdate
(默认为默认值),应生成绑定可识别的change
事件。如果您使用contenteditable
设置绑定到非表单元素,那么BTW也是您必须执行的操作,因为这些元素本身不会生成change
个事件。