2013-12-18 3 views
0

기본적으로 사용자가 입력 필드에 두 개의 개별 배열에 대해 입력 한 검사 값이 있습니다. 하나는 오류를 생성하는 단어의 배열이고, 다른 하나는 경고를 발생시키는 단어의 배열입니다. 나는이 두 기능을 만들었으며 그들은이 두 개의 서로 다른 필드두 개의 유효성 검사기를 Parsley.js에 추가

, warning: function() { 
     var that = this; 
     return { 
      validate: function (val,arrayRange) { 
        var warningWords = new Array(); 
        warningWords[0]="Cricket"; 
        warningWords[1]="Football"; 
       for (var i = 0; i < warningWords.length; i++) { 
         if(val.toLowerCase()===warningWords[i].toLowerCase()) 
          return false; 
       } 
       return true; 
     } 
     , priority: 32 
     } 
    } 
    , wrong: function() { 
     var that = this; 
     return { 
      validate: function (val,arrayRange) { 
        var errorWords = new Array(); 
        errorWords[0]="Justin"; 
        errorWords[1]="Chester"; 
       for (var i = 0; i < errorWords.length; i++) { 
         if(val.toLowerCase()===errorWords[i].toLowerCase()) 
          return false; 
       } 
       return true; 
     } 
     , priority: 32 
     } 
    } 

과 HTML

<label for="email">ERROR :</label> 
<input name="message1" id="error" parsley-trigger="keyup" parsley-wrong="" ></input> 

<label for="message">Warning</label> 
<input name="message" parsley-trigger="keyup" parsley-warning=""></input> 
<button type="submit">Submit</button> 

와 결합 할 때 동일한 이러한 기능을 모두 결합하는 것이 가능 잘 작동하는 것 입력란? 그리고 두 번째로 나는 입력 필드의 배경이 노란색으로 바뀌고 잘못 될 경우 빨간색으로 바뀌어야한다고 원한다. 나는 파슬리 에러 클래스를 넘겼다. 하지만 경고 함수가 폼을 무효화 할 때 트리거 될 다른 클래스를 만들 수 있습니까?

세 번째로 경고 기능으로 인해 필드가 무효화되는 경우에도 양식을 제출할 수 있습니까? JS를 통해 쉽게 달성 할 수 있으므로 파슬리가 양식 유효성 검사를 중지하는 것을 차단할 수 있습니다.

답변

0

Q1의 경우 파슬리의 기본 제공 유효성 검사기를 두 개 이상 사용할 수있는 것처럼 동일한 입력에 여러 개의 사용자 지정 유효성 검사기를 사용할 수 있어야합니다. 강제로 우선 순위를 부여하려면 우선 순위를 높이거나 낮추십시오.

Q2에 대한 응답으로 추가 클래스를 입력에 추가하여 파슬리 오류 스타일을 수정할 수 있습니다. 다음은 예입니다 :

input.parsley-error { 
    background-color: #f00; 
} 

input.parsley-error.warning { 
    background-color: #ff0; 
} 

그래서 당신은 같은 입력 필드에 두 검증을한다면 당신은 경고 검사기가 false를 반환 할 때 .warning 클래스를 추가하고 진정한 반환 할 때이 클래스를 제거 할 수.

Q3의 경우 'onFormValidate'매개 변수가 false 인 경우에도 'onFormValidate'수신기를 무시하고 true를 반환하도록하여 유효성 검사 문제에도 불구하고 양식을 제출할 수 있어야합니다.

$('#formId').parsley({ 
    listeners: { 
     onFormValidate: function(isFormValid, event, ParsleyForm) { 
      return true; 
     } 
    } 
}); 
+0

하나 이상의 필드에 파슬리의 내장 유효성 검사기를 둘 이상 사용할 수 있습니까? 나는 이것의 예를 찾을 수 없었다. 모범이 있습니까? – Kieveli

관련 문제