【问题标题】:DatePicker Start Date and Finish Date Validation without plugin没有插件的 DatePicker 开始日期和完成日期验证
【发布时间】:2014-10-01 09:17:14
【问题描述】:

将 Asp.Net MVC 4 与 JqueryUI 结合使用。

我有 2 个为我提供日期选择器的文本框。我需要验证;开始日期可以等于结束日期,结束日期不能小于开始日期。

日期选择器脚本代码;

<script>
    $(function () {
        $(".date").datepicker({
            changeMonth: true,
            changeYear: true
        });
    });

</script>

我的文本框:

<td>@Html.TextBoxFor(model => model.StartDate, "{0:dd.MM.yyyy}", new { @class = "date", @id="dt1" }) </td>

<td>@Html.TextBoxFor(model => model.FinishDate, "{0:dd.MM.yyyy}", new { @class = "date", @id="dt2" }) </td>

I found this code from this subject。但我无法得到验证。我不知道有什么问题。我们将不胜感激所有帮助。

$(document).ready(function () {

$("#dt1").datepicker({
    dateFormat: "dd-M-yy",
    minDate: 0,
    onSelect: function (date) {
        var dt2 = $('#dt2');
        var startDate = $(this).datepicker('getDate');
        var minDate = $(this).datepicker('getDate');
        dt2.datepicker('setDate', minDate);
        startDate.setDate(startDate.getDate() + 30);
        //sets dt2 maxDate to the last day of 30 days window
        dt2.datepicker('option', 'maxDate', startDate);
        dt2.datepicker('option', 'minDate', minDate);
        $(this).datepicker('option', 'minDate', minDate);
    }
});
$('#dt2').datepicker({
    dateFormat: "dd-M-yy"
});

});

JQuery - end date less than start date

【问题讨论】:

  • 您希望何时显示两个日期的验证相等?我的意思是当您检查日期或单击提交时
  • 感谢您的回答。我需要这样的东西。请查看此链接:jsfiddle.net/PPSh3/7

标签: javascript jquery asp.net-mvc-3 jquery-ui datepicker


【解决方案1】:

我认为这可能会对您有所帮助,当您更改其中一个日期选择器时,如果两者不同,则会显示错误。并将isValid 变量设置为 false 也阻止它提交

<script>
    var isValid=true;
    $(function () {
        $(".date").datepicker({
            changeMonth: true,
            changeYear: true,
            onSelect: function() {
                var date1 = $("#dt1").datepicker('getDate');
                var date2 = $("#dt2").datepicker('getDate');
                if (date1.getDate() === date2.getDate() && 
                    date1.getMonth() === date2.getMonth() &&
                    date1.getFullYear() === date2.getFullYear())
                {
                     isValid=false;
                     //ALERT error 
                }
            }
        });
    });

</script>

【讨论】:

猜你喜欢
  • 2015-06-29
  • 1970-01-01
  • 2012-07-25
  • 2015-09-29
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多