难以将c#代码转换为jquery日期拾取器逻辑

本文关键字:日期 jquery 代码 转换 | 更新日期: 2023-09-27 18:13:41

首先,感谢您花时间帮助我。

服务器端代码如下:

if (!IsPostBack)
            {
                dateFrom.Date = dateTo.Date.AddMonths(-1);
                dateFrom.MinDate = dateTo.Date.AddMonths(-6);
                dateFrom.MaxDate = dateTo.Date;
                dateTo.Date = DateTime.Now;
                dateTo.MinDate = dateFrom.Date;
                dateTo.MaxDate = DateTime.Now;
            }

因此,当页面加载时,我想将dateFrom日期选择器的当前日期设置为今天的日期减去1个月,并将最小日期设置为从今天开始的-6个月。

还有下面的代码:

   protected void dateFrom_DateChanged(object sender, EventArgs e)
    {
        dateTo.MinDate = dateFrom.Date;
    }
    protected void dateTo_DateChanged(object sender, EventArgs e)
    {
        dateFrom.MinDate = dateTo.Date.AddMonths(-6);
        dateFrom.MaxDate = dateTo.Date;
    }

声明当从dateFrom日历中选择一个日期时,我想将DateTo日历的最小日期设置为dateFrom日历的日期。

任何帮助或指示或建议将不胜感激。我想我必须与jquery Datepicker的'onSelect'事件一起工作,但我不知道当我初始化使用'option' API的Datepicker时是否应该使用它。

谢谢!

难以将c#代码转换为jquery日期拾取器逻辑

查看jQuery UI的日期范围示例,它正是您正在寻找的。

$(function() {
    var dates = $( "#from, #to" ).datepicker({
        defaultDate: "+1w",
        changeMonth: true,
        numberOfMonths: 3,
        onSelect: function( selectedDate ) {
            var option = this.id == "from" ? "minDate" : "maxDate",
                instance = $( this ).data( "datepicker" ),
                date = $.datepicker.parseDate(
                    instance.settings.dateFormat ||
                    $.datepicker._defaults.dateFormat,
                    selectedDate, instance.settings );
            dates.not( this ).datepicker( "option", option, date );
        }
    });
});

您还需要为from选择器设置minDate: "-6M"