簡體   English   中英

在jQuery Datepicker中禁用日期

[英]Disable date in jquery datepicker

我有一個帶datepicker的ASP文本框,datepicker命名為input-datepicker,當焦點位於文本框時會出現,因此無法執行此代碼:-

<div class="form-group">
    <label class="col-md-3 control-label" for="state-normal">
        Check-In Date
    </label>
    <div class="col-md-6">
        <asp:TextBox ID="txtcheckindate" runat="server" CssClass="form-control input-datepicker" data-date-format="yyyy-mm-dd" placeholder="yyyy-mm-dd"></asp:TextBox>
        <span class="help-block">
            <asp:RequiredFieldValidator ID="rfvcheckindate" runat="server" ForeColor="#E7935C" SetFocusOnError="true" ControlToValidate="txtcheckindate" ValidationGroup="val1" Display="Dynamic" ErrorMessage="Enter Check In date"></asp:RequiredFieldValidator>
        </span>
    </div>
</div>

我想禁用從現在到48小時之前的日期。 我已經嘗試過此代碼,但是它根本不起作用,甚至在開發人員控制台中也沒有給出任何錯誤。

$(document).ready(function () {
    $("#txtcheckindate").datepicker().datepicker("setDate", new Date());
    $("#txtcheckindate").datepicker({
        dateFormat: 'yy-mm-dd',
        beforeShowDay: noWeekendsOrHolidays
    });

    function noWeekendsOrHolidays(selDate) {
        var noNext2Days = chkNext2Days(selDate);
        return noNext2Days;
    };

    function chkNext2Days(selectedDate) {
        var today = new Date();
        if (isEqual(selectedDate, today)) 
            return [false, '', ''];

        today.setDate(today.getDate() + 1);
        if (isEqual(selectedDate, today)) 
           return [false, '', ''];

        today.setDate(today.getDate() + 1);
        if (isEqual(selectedDate, today)) 
            return [false, '', ''];

        return [true, '', ''];
    }

    function isEqual(srcDate, tarDate) {
        if ((srcDate.getDate() == tarDate.getDate()) && (srcDate.getMonth() == tarDate.getMonth()) && (srcDate.getFullYear() == tarDate.getFullYear())) {
            return true;
        } else { 
            return false; }
        }
    });

誰能告訴我錯誤在哪里?

嘗試改變這個

$("#txtcheckindate").datepicker().datepicker("setDate", new Date());
    $("#txtcheckindate").datepicker({
        dateFormat: 'yy-mm-dd',
        beforeShowDay: noWeekendsOrHolidays
    });

為了這

$("#txtcheckindate").datepicker({
    setDate: new Date(),
    dateFormat: 'yy-mm-dd',
    beforeShowDay: noWeekendsOrHolidays
});

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM