簡體   English   中英

如何使用JavaScript從日期選擇器上的選定日期獲取星期幾

[英]How to get day of the week from the selected date on datepicker using javascript

如何從openstatus1上的選定日期獲取星期幾,並且如果選定的日期是星期六或星期日,則顯示openstatus1否則顯示openstatus

的JavaScript

$("#datepicker").datepicker({ 
        autoclose: true, 
        todayHighlight: true
}).on('changeDate', function(e) {
    if(e.date && e.date.GetDay()==6 && e.date.GetDay()==7) {
        $('.openstatus').toggle();
    } else {
        $('.openstatus1').toggle();
    }
});

我的表格

<div id="datepicker" class="input-group" data-date-format="mm-dd-yyyy">
<input class="form-control" name="Date" type="text" readonly />
<span class="input-group-addon"><i class="glyphicon glyphicon-calendar"></i></span>
</div>
<div class="openstatus">

    <select name="ResTime" class=" selectpicker">
        <option  selected="selected" value="select time">Select Time</option>
        <option value="10:30am">10:30 am</option>
        <option value="11:00am">11:00 am</option>
        <option value="11:30am">11:30 am</option>
        <option value="12:00pm">12:00 pm</option>
        <option value="12:30pm">12:30 pm</option>
        <option value="1:00pm">1:00 pm</option>
        <option value="1:30pm">1:30 pm</option>
        <option value="2:00pm">2:00 pm</option>
        <option value="2:30pm">2:30 pm</option>
        <option value="3:00pm">3:00 pm</option>
        <option value="3:30pm">3:30 pm</option>
        <option value="4:00pm">4:00 pm</option>
        <option value="4:30pm">4:30 pm</option>
        <option value="5:00pm">5:00 pm</option>  
    </select>

</div>
<div class="openstatus1">

    <select name="ResTime" class="selectpicker">
        <option  selected="selected" value="select time">Select Time</option>
        <option value="8:00am">8:00 am</option>
        <option value="8:30am">8:30 am</option>
        <option value="9:00am">9:00 am</option>
        <option value="9:30am">9:30 am</option>
        <option value="10:00am">10:00 am</option>
        <option value="10:30am">10:30 am</option>
        <option value="11:00am">11:00 am</option>
        <option value="11:30am">11:30 am</option>
        <option value="12:00pm">12:00 pm</option>
        <option value="12:30pm">12:30 pm</option>   
    </select>

</div>

在javascript中,星期日的GetDay()為0,而不是7。

getDay()方法根據本地時間返回指定日期的星期幾,其中0代表星期日。

https://developer.mozilla.org/zh-CN/docs/Web/JavaScript/Reference/Global_Objects/Date/getDay

您還要檢查一個值== 6 == 7,它將永遠不會出現,因此您需要將to to更改為

因此,您的代碼應為:

$("#datepicker").datepicker({ 
    autoclose: true, 
    todayHighlight: true
}).on('changeDate', function(e) {
    if(e.date && (e.date.GetDay() == 6 || e.date.GetDay() == 0)) {
        $('.openstatus').toggle();
    } else {
        $('.openstatus1').toggle();
    }
});

您會發現的下一個問題是.toggle()將僅切換您選擇的項目。 您可以將布爾值標志與toggle一起使用,但是有時更明確一些,以便顯示/隱藏您想要的內容,並給出:

$("#datepicker").datepicker({ 
    autoclose: true, 
    todayHighlight: true
}).on('changeDate', function(e) {
    if(e.date && (e.date.GetDay() == 6 || e.date.GetDay() == 0)) {

        // show hide .openstatus/.openstatus1 as required (ie might need to swap these two)
        $('.openstatus').show();
        $('.openstatus1').hide();
    }
    else {
        $('.openstatus').hide();
        $('.openstatus1').show();
    }
});

暫無
暫無

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

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