我有一个包含一些Knockout代码的表单,但表单提交时间过早。我有以下
<form data-bind="submit:addItem">
Add illness: <input type="text" data-bind='value:itemToAdd, valueUpdate: "afterkeydown"' />
<button type="submit" data-bind="enable: itemToAdd().length > 0">Add</button>
</form>
按钮干扰了我的Razor表单,我认为因为它是type =“submit”,所以当我点击这个按钮时,表单正在提交,当我想要使用这个按钮时,就是调用一个Knockout功能。
所以我想解决问题的一种方法是不使用上面的代码,但我不知道替代方案是什么。希望我不需要在那里输入type =“submit”,因为我需要在以后提交最终表单时保存该功能
答案 0 :(得分:0)
试试这个:
<form data-bind="submit:addItem.bind($data)">
我在所有点击事件中使用.bind
因为它会停止在应用绑定时触发的点击事件,并且还允许您传递额外的参数。