2009-05-08 7 views
0

어떻게 jquery를 사용하여 두 개의 날짜 텍스트 상자의 유효성을 검사합니까? 이 코드 스 니펫을 발견했습니다. 텍스트 상자 매개 변수를 입력하는 방법 :2 개의 텍스트 상자 사이에 유효성 검사 - jquery

$.validator.addMethod('greaterThan', function(value, element, param) { return (IsNaN(value) && IsNaN($(param).val())) || (value > $(param).val()); }, 'Must be greater than {0}.'); 

$.validator.addMethod('lesserThan', function(value, element, param) { return (IsNaN(value) && IsNaN($(param).val())) || (value < $(param).val()); }, 'Must be lesser than {0}.'); 

시작 날짜가 종료 날짜보다 커야합니다.

답변

1

잡아 DateJS는

http://www.datejs.com/

<form> 
    <input type="text" id="startdate" /> 
    <input type="text" id="enddate" /> 
</form> 
<button id="checkdates">Check Dates</button> 

<div id="msg"></div> 

<script> 
    $(function() { 
     $("#msg").text(''); 

     $("#checkdates").click(function(event) { 
      var startdate = Date.parse($("#startdate").val()); 
      if (!startdate) { $("#msg").append("Start Date is not a valid date<br/>"); } 

      var enddate = Date.parse($("#enddate ").val()); 
      if (!enddate) { $("#msg").append("End Date is not a valid date<br/>"); } 

      if (startdate && enddate) { 
       if (startdate.compareTo(enddate) <= 0) { 
        $("#msg").append("Start date must be greater than end date"); 
       } 
      } 
      event.preventDefault(); 
      return false; 
     }); 
    }); 
</script> 
+0

그것은 오류를 던지고 아닙니다. 어디 validateDates() 함수를 추가합니까? 및 경고 [messagebox] 대신에 라벨 형식으로 오류를 표시하려면 어떻게해야합니까? – input

+0

거기에는 여러 가지 방법이 있지만, 귀하의 질문에 게시 한 것 이외에 많은 정보가 없으므로이 코드는 작동하지만 ... 당신의 마음을 읽을 수는 없습니다 –

+0

버튼 클릭 이벤트에 대한 유효성을 부여했습니다 . 하지만 사용자가 잘못된 날짜를 입력하자 마자 오류 레이블을 표시하고 싶습니다. 끝 날짜는 시작 날짜보다 작습니다. – input

관련 문제