jQuery验证,将错误消息放在复选框和单选按钮组下面

时间:2011-11-11 18:55:22

标签: javascript jquery validation radio-button

我有一个包含几组复选框和单选按钮的表单。单选按钮的错误消息始终直接显示在组中的第一个单选按钮之后。我能够在错误复选框下方显示错误消息。但是,对于单选按钮,我没有任何运气。收音机和复选框的所有名称属性都不同(呃)。这是我目前的代码......

jQuery("body.page-user-register input[type=checkbox]").addClass("certboxes");
jQuery.validator.addMethod('certboxes', function (value) {
          return jQuery('.certboxes:checked').size() > 0; }, 'Please check at least one     box.');
var checkboxes = jQuery('.certboxes');
var checkbox_names = jQuery.map(checkboxes, function(e,i) { return jQuery(e).attr("name")}).join(" ");


groups: {checks: checkbox_names},
    errorPlacement: function(error, element) {
         if (element.attr("type") == "checkbox") {
           error.insertAfter(checkboxes.parent().last());
           }
         else {
           error.insertAfter(element); 
           }
}

2 个答案:

答案 0 :(得分:3)

我一直在寻找这个问题的解决方案,并找到了这个相关(并已解决)的问题。更新任何偶然发现此事的人。

Jquery validation error placement (radio buttons)

答案 1 :(得分:2)

这对我有用:

errorPlacement: function(error, element) {
     error.appendTo(element.parent());
}

或者,可以使用:

errorPlacement: function(error, element) {
    error.appendTo(element.parent().siblings('.new container for errors'));
}
相关问题