我编写了一个带有各种值绑定的表单和一个淘汰视图模型。表单由 AJAX 帖子提交(由表单按钮上的单击绑定触发)。我注意到当我在文本字段中进行更改时,模型在发布之前没有正确更新,将光标留在其中并直接单击提交按钮。
我知道值绑定的“afterkeydown”选项,但我不想使用它,因为它也会触发我在每次按键时的验证。有没有办法在我的 ajax 提交函数中以编程方式强制模型更新?
我编写了一个带有各种值绑定的表单和一个淘汰视图模型。表单由 AJAX 帖子提交(由表单按钮上的单击绑定触发)。我注意到当我在文本字段中进行更改时,模型在发布之前没有正确更新,将光标留在其中并直接单击提交按钮。
我知道值绑定的“afterkeydown”选项,但我不想使用它,因为它也会触发我在每次按键时的验证。有没有办法在我的 ajax 提交函数中以编程方式强制模型更新?
尝试使用提交绑定而不是单击:
<form data-bind="submit: doSomething">
... form contents go here ...
<button type="submit">Submit</button>
</div>
<script type="text/javascript">
var viewModel = {
doSomething : function(formElement) {
// ... now do something
}
};
</script>
提交的文档页面:http: //knockoutjs.com/documentation/submit-binding.html