我们有一个类型编号的输入,带有这样的敲除绑定:
<inputtype="number" data-bind="value: quantity" />
这适用于Chrome和EDGE,但不适用于Firefox。每当我们更改值并按save时,该值将重置为之前的值。
知道为什么这不起作用吗?
答案 0 :(得分:1)
请使用&#39; textInput&#39;绑定而不是&#39;值&#39;用于双向绑定。来自文档:
浏览器在响应中触发的事件中非常不一致 不寻常的文本输入机制,如切割,拖动或 接受自动填充建议。价值绑定,即使有额外的 诸如valueUpdate之类的选项:afterkeydown以获取特定的更新 事件,并未涵盖所有浏览器上的所有文本输入方案。
textInput绑定专门用于处理各种范围 浏览器怪癖,提供一致和即时的模型更新 即使是对不寻常的文本输入方法的回应。
http://knockoutjs.com/documentation/textinput-binding.html
如果它没有帮助,请发布您的视图模型并重新检查没有其他事件处理程序绑定到同一个DOM元素。