2010-12-06 2 views

답변

2

URL이나 링크에서? 차이가 있습니다.

그러나 어느 경우 든 백엔드도 확인하는 것을 잊지 마십시오. 클라이언트 측 유효성 검사를 신뢰할 수 없습니다. 사용자의 삶을 편하게하기 위해서만 사용해야합니다.

당신은이 같은 일치하는 정규식과 사용자 정의 기능을 사용할 수
+0

나는 PHP를 사용하여 백 엔드에서 검증하고 있습니다. 프런트 엔드에서만 확인해야합니다. 예 : http://www.example.com이 링크를 피하려고합니다. – Kathir

2

:

$("#your_form").validate({ 
textarea: no_url 
}); 

당신은 변한해야 할 것입니다 : 당신은 그냥 요소에 새 사용자 지정 유효성 검사 방법을 추가 그리고

$.validator.addMethod('no_url', function validatePositionNummer(value){ 

      var re = /^[a-zA-Z0-9\-\.]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$/; 
      var trimmed = trim(value); 
      if(trimmed == ''){ 
       return true; 
      } 
       return trimmed.match(re); 

     },"No URLs allowed!"); 

정규식을 조정하십시오.

+0

대/소문자를 구분하지 않고 대/소문자를 구분해야하는 이유는 무엇입니까? CoM을 그 (또는 BIZ, 박물관 또는 CCT)와 일치시키지 않습니다. – Quentin

0

@ BernardMarx 솔루션을 제공해 주셔서 감사합니다.

여기 나는 여분의 정규식을 사용하여 요구 사항에 따라 프로토콜의 유효성을 검사했습니다. 이제는 유효성을 검사해야합니다. 제안하시기 바랍니다 .. 예를 들어

:

http://www.example.com/index.php

http://www.example.php/home/

$.validator.addMethod('no_url', function validatePositionNummer(value){ 

    var re = /^[a-zA-Z0-9\-\.\:\\]+\.(com|org|net|mil|edu|COM|ORG|NET|MIL|EDU)$/; 

    var re1 = /(ftp|http|https):\/\/(\w+:{0,1}\w*@)?(\S+)(:[0-9]+)?(\/|\/([\w#!:.?+=&%@!\-\/]))?/; 

    var trimmed = $.trim(value); 

    if(trimmed == ''){ 

     return true; 
    } 

    if(trimmed.match(re) == null && re1.test(trimmed) == false){ 

     return true; 
    } 

},"No URLs allowed!"); 
관련 문제