2012-04-13 4 views
0

Im пытается получить значения из моего datepicker в новый скрипт, который должен подтвердить, что второе выбранное значение от datepicker не до первого выбранного datepicker.Подтвердить диапазон дат с помощью jquery datepicker

Однако мой сценарий не будет выполнен.

Это мое мнение:

<div class="editor-field"> 
     @Html.TextBox("PlannedDate", Model.PlannedDate, new { @class = "date", @readonly = "readonly" }) 
     @Html.TextBox("CompletedDate", Model.CompletedDate, new { @class = "date", @readonly = "readonly" }) 
     @Html.ValidationMessageFor(model => model.CompanyName) 
    </div> 
<input id="submitfloat" type="submit" value="Go" /> 

Это мой скрипт

<script> 
    $(".date").datepicker(); 
    $('#submitfloat').submit(function() { 
    var fromDate = $('#PlannedDate').val(); 
    var EndDate = $('#CompletedDate').val(); 
    if (Date.parse(fromDate) > Date.parse(EndDate)) { 
    alert("Date error") 
    } 
    return false; 

}); 

Однако, когда я начала отладки ут Firebug, кажется, что мой линии $('#submitfloat').submit(function() { обыкновение выполнять.

Кто-нибудь знает, что моя проблема и как ее можно решить? Заранее спасибо

+0

Я думаю, что вы должны сделать .submit() на форме, а не на кнопку отправки? –

ответ

2

хорошо, мой первый ответ, надеюсь, вам это поможет.

первый мой взгляд:

<script src="Js/jquery.min.js" type="text/javascript"></script> 
    <script src="Js/jquery.validate.min.js" type="text/javascript"></script> 
    <script src="Js/jquery-ui-1.8.18.custom.min.js" type="text/javascript"></script> 
    <link href="Css/start/jquery-ui-1.8.18.custom.css" rel="stylesheet" type="text/css" /> 

я использую, что для выбора даты и проверки

<form id="custom" action=""> 
     <input type="text" id="fechaLlegada" name="fechaL" style="color: #4080BF; font: bold 12px verdana; padding: 0 2px 3px 2px;"/> 
     <input type="text" id="fechaSalida" name="fechaS" style="color: #4080BF; font: bold 12px verdana; padding: 0 2px 3px 2px;"/> 
     <br /> 
     <input type="submit"/> 
    </form> 

теперь сценарий

<script type="text/javascript"> 
jQuery.validator.addMethod("isValid", function (value, element) { 
    var startDate = $('#fechaLlegada').val(); 
    var finDate = $('#fechaSalida').val(); 
    return Date.parse(startDate) < Date.parse(finDate); 
}, "* End date must be after start date"); 

$(function() { 
    $('#fechaLlegada,#fechaSalida').datepicker() 

    $('#custom').validate({ 
     rules: { 
      'fechaL': { required: true, date: true }, 
      'fechaS': { required: true, date: true, isValid: true } 
     }, messages: { 
      'fechaL': { required: 'date required msj!', 
       date: 'invalid date format msj' 
      }, 
      'fechaS': { required: 'date required msj!', 
       date: 'invalid date format msj', 
       isValid: 'End date must be after start date' 
      } 
     } 
    }); 

}); 
</script> 

я добавил метод в JQuery Validate для проверки даты я использую ее, как правило, в скрипте проверки

this is working for me, i hope it helps someone 
+0

Работает в т.ч., но не в FF и в опере (не проверяется никого). У вас есть идеи, почему он работает только в т.ч.? – Codded

Смежные вопросы