我正在构建一个表单,在该表单中是我希望运行的辅助功能。但是,当我单击辅助功能的按钮时,主干会触发并在整个表单上运行验证。我该怎么做:
a)使Backbone忽略该特定按钮,并在单击时不执行任何操作
或
b)(首选)仅将表单提交按钮或按钮类型“提交”绑定主干验证。
示例:
<form name="myForm" >
<input type="text" name="yourName" ng-model="yourName" required />
<input type="text" name="postcode" ng-model="postcode" required />
<button id="checkPostcode" type="button" >Check Postcode</button>
<button id="submit" type="submit" >Submit</button>
</form>
在这种情况下,我只希望Backbone在按下提交按钮时运行验证,这样我就可以不受干扰地运行checkPostcode功能。
谢谢:)
答案 0 :(得分:1)
您应该向按钮添加eventListener并阻止默认值。像这样:
var view = Backbone.View.extend({
events: {
"click #checkPostcode": "checkPostcode"
},
checkPostcode: function(event) {
event.preventDefault();
// the actual check would go here
}
});
答案 1 :(得分:0)
通过使用不同的功能来提高您的特异性 像这样的东西: 检查邮政编码 提交