2012-10-21 7 views
1

플러그인은 여기에 오류 클래스를 추가합니다 일부 브라우저에서는 이러한 유형의 요소 스타일을 허용하지 않기 때문에 확인란 및 라디오에서 작업하지 않아도됩니다. 따라서이 두 가지 유형의 요소에 대해 오류 클래스가 대신 포함 된 클래스를 포함하는 div block을 사용하고 싶습니다. 그러면 다음과 같이 잘못 표시됩니다.JQuery와 유효성 검사 플러그인 문제는

<div class="block error"> 
    <input type="checkbox" name="something" class="error" /> Something 
</div> 

어떻게 이것을 구현할 수 있습니까?

의사 코드 :

$.validator.addClassRules('checkboxOrRadioError', { 
    onError: function() { 
     $(this).parents('.block').addClass('error'); 
    } 
}); 

답변

2

당신은 이상 unhighlight와 함께 오류의 기본 배치 또는 highlight 콜백을 타고하는 errorPlacement 콜백을 사용할 수 있습니다. '(element.is 함수`경우 (element.is되지 않습니다 : 당신은 지금 무슨 일을 제어 할 만 예

모든 조건

를 작성해야합니다 : 나는 콘솔에서이 오류가

$('form').validate(function() { 

    highlight: function(element, errorClass) { 
     var $el = $(element); 
     if ($el.is(':radio') || $el.is(':checkbox')) { 
      $el.closest('.block').addClass(errorClass) 

     } else { 
       /* add code for default*/ 
     } 

    }, 

    unhighlight: function(element, errorClass) { 
       /* code to reverse the above*/ 
    } 
})​ 
+0

가 : 형식 오류가 : checkbox ') || element.is (': radio ')) {' – TK123

+0

'$()''$ (element)'에서 랩핑을 시도한 것은 잠시 있었고 응답 코드도 – charlietfl

+0

으로 수정되었습니다. 그게 다 했어, 고마워! – TK123

관련 문제