表单提交的复选框:点击按钮时显示错误
Checkbox on form submit: error keeps displaying on button click
我有一个表单,它要求用户在提交之前单击一个复选框。在提交时,如果用户没有选中这个框,我将显示一条错误消息。目前,如果我一直点击消息不断增加。我如何改变它,使它只显示一次。
onFormSubmit : function(isFormValid, event){
if ($('#agree_to_terms_join').prop('checked')) {
$('#agree_to_terms_label').parent().removeClass('has-error').find('.error').remove();
} else {
$('#agree_to_terms_label').parent().addClass('has-error').append(
'<div class="textbox-alert help-block error" style="display: block;">' +
'<div class="type" style="display: block;">Message goes here</div>' +
'</div>'
);
return false;
}
}
虽然这个解决方案可能需要额外的工作和更改一些html,但这是更好的方法:
- 保持html块在表单本身
- 并使用CSS根据错误切换可见性。
JS
onFormSubmit: function(isFormValid, event) {
var elem = $('#agree_to_terms_label');
elem.is(":checked") ? elem.parent().removeClass("error"):elem.parent().addClass("error");
}
CSS:
.has-error .error {
display: block;
}
.error {
display: none;
}