2017-01-16 2 views
-2

jquery.validate.js 사용. 내 비밀번호 재설정 양식에 사소한 기술적 인 문제가 있습니다.유효성 검사 메시지가 지워지지 않음, 잘못된 것일 수 있음

유효성 검사가 올바르게 작동합니다. submitHandler 앞에 규칙 + 메시지가 있습니다.

모든 메시지는 각각의 입력 상자 아래에있는 내

<span class="help-block" id="error"></span> 

에 직접 간다. 따라서 내가 잘못 입력하면 상자 아래에 라이브 오류 메시지가 표시됩니다.

문제점 : 올바르게 입력하면 오류 메시지가 표시되지 않습니다. 그리고 성공과 새로운 암호를 얻습니다. 이것은 좋다.

그러나 입력하는 동안 실패하지만 이후에 수정하고 새 암호를 만들면 위의 스팬 도움말 블록에 "이전"오류가 표시됩니다. 모든 것이 성공 일지라도.

그래서 나는이가 상상 :

 $("#form-reset").validate(
     { 
      rules: 
      { 
       pass: { required: true} 
      }, 
      messages: 
      { pass: { required: dsaj jfaio daijo djaio} 

      }, 
      /*AND HERE THE HELP-BLOCK TO GIVE CLIENT INFO*/ 
      { 
      }, 
      /* here the submitHandler*/ 
      submitHandler: submitFormReset 
     }); 

     /* submitHandler kick off this function */ 
     function submitFormReset() 
     { 
      /* At this point I would like to turn off validation*/ 
     } 

내가 위의 함수의 도움말 블록에 클래스와 ID를 제거하기 위해 노력했다. 정보 텍스트는 제거되지만 입력 상자가 빨간색 (실패한 경우) 및 녹색 (성공한 경우)으로 표시되므로 성공해도 빨간색으로 문제가 발생합니다. 그래서 나는이 시점에서 유효성 검사를 '해제'해야한다고 생각합니다. 그게 가능하다면 ...

+0

* "나는 이것이 많은 정보 아니라는 것을 알고,하지만 난 그것을 설명하는 방법을 잘 모르겠어요 ..."* ~ 문제를 재현하기에 충분한 코드를 표시하여 설명한다. '.validate()'에 대한 호출과'form'에 대한 HTML 마크 업은 어디에 있습니까? – Sparky

+0

@ Sparky 그래, 나는 동의하지만, 코드 톤의 톤. 만약에'submitHandler'가 시작된 후에 어떻게 든 유효성 검사를 끌 수 있다면 (이 시점에서 입력 상자 검증을 더 이상 할 필요가 없다) 실제로 문제가 해결 될 것입니다. 유효성 검사 부분은 클라이언트에 대한 실시간 정보만을위한 것입니다 ... –

+0

지금까지 보여준 내용은 설명하는 문제와 관련이 없습니다. 오류가 해결되면 메시지가 사라집니다. 네가 그걸 깰 뭔가를하지 않았다면. ** 문제의 jsFiddle 데모를 작성하십시오 **. – Sparky

답변

-1

나는 그것을 알아 냈다. 나는 여기서 답을 쓴다. 어쩌면 다른 사람들을 도울 수있다. 제출 처리자 다음으로 양식을 사용합니다. 난 더 이상 성공 후 이상한 물건을하지 않습니다이 양식을 제거하면

예를 들어 나는

 $('#formZ')[0].reset(); 

를 사용합니다. 왜 이것이 jquery 유효성 검사기를 위반하는지 모르겠다. 그러나 위의 재설정을 건너 뛰면된다.

한스

+0

만약 당신이 원래의 질문에이 코드를 게시했다면, 누군가 당신을 위해 알아 냈을지도 모른다. – Sparky

+0

가능성이 있습니다. 그러나 이것은이 블록에서 250 행 중 1 행입니다. 나는 내가 여기에 게시해야하는 코드를 탐지하고 검사해야한다. 250 행은 누구에게도 읽히지 않을 것이며 그 이유를 이해합니다. 이 경우 어쩌면 내 질문을 게시해서는 안되지만 어쨌든 미래 프로그래머를 도울 수 있습니다. –