如果在某一小时之前阻止一天

时间:2016-09-22 13:40:51

标签: javascript jquery date if-statement time

我试图在某些为我编写的代码中触发某些内容,但我似乎无法让它工作。

我需要的是今天和今天之前有一个日期选择器阻止,如果它在上午11点之前,并在明天和之前的11月之后阻止。我试图在下面的代码中对minDate放置一个if / else,但没有快乐。

我假设我可以使用我在其他帖子中找到的一些代码来执行此操作:

var currentTime = new Date();
var startTime = new Date();
startTime.setHours(00);
startTime.setMinutes(00);
var endTime = new Date();
endTime.setHours(11);
endTime.setMinutes(00);

if ((currentTime.getTime() > startTime.getTime()) && (currentTime.getTime() < endTime.getTime())
{
   minDate: 2
} else {
   minDate: 3;
}

但是每当我尝试将其放入下面的代码中时我就会打破它。有人可以帮忙吗?

.jQuery(".dpicker").datepicker(
{
    minDate: 2,
    onSelect: function(dateText, inst)
    {
        var date = jQuery(this).val();
        jQuery('#frm_field_263_container').hide();
        jQuery('#frm_field_263_container').after(
            '<img id="loading" src="loading30.gif" />'
        );
        jQuery('#frm_field_265_container').hide();
        var qantity;
        if (!jQuery('#field_6pc0y').val())
        {
            qantity = 0;
        }
        else
        {
            qantity = parseInt(jQuery('#field_6pc0y').val());
        }
        jQuery.post(frm_js.ajax_url,
        {
            'action': 'order_quantity',
            'pick_up_date': jQuery('#field_mv0ti').val(),
            'product_id': jQuery('#product_id').val(),
            'product_title': jQuery('#product_title').val()
        }, function(response)
        {
            stock = parseInt(response);
            jQuery('#field_navpp').val(response - qantity);
            jQuery('#loading').hide();
            jQuery('#frm_field_263_container').show();
            if (response - qantity < 0)
            {
                jQuery('#frm_field_265_container').show();
            }
        });
    },
    dateFormat: 'yy-mm-dd',
    changeMonth: true,
    changeYear: true
});

1 个答案:

答案 0 :(得分:0)

分配属性或goto标签时,

:用于对象文字;您想要的是将您的minDate存储在变量中,以便在创建日期选择器时使用它:

var minDate;
var currentTimestamp = currentTime.getTime();
if (currentTimestamp > startTime.getTime() && currentTimestamp < endTime.getTime()) {
   minDate = 2;
} else {
   minDate = 3;
}

jQuery(".dpicker").datepicker({
  minDate: minDate,
  // etc...
});