jQuery Datepicker - 当选择其中一个日期时,在输入字段中插入数据

时间:2012-10-19 06:28:41

标签: javascript jquery datepicker

我有一些假期:

var holidayDays = ['24/12/2012', '2/1/2013', '14/2/2013'];

和代码:

if( parseInt($("#date").val()) == holidayDays ) {  
        var freeday_value = ('holiday');
        $('#holiday_day').val(freeday_value);
    }

谁没有工作。

我想要实现的目标:如果在datepicker中有人从上表中选择日期,那么在input字段(#holiday_day)上将显示word:holiday。我做错了什么?

感谢您的帮助。

3 个答案:

答案 0 :(得分:2)

你可以这样做:

if( $.inArray($("#date").val(), holidayDays) ) {  
        var freeday_value = 'holiday'; // Just removed () from your code
        $('#holiday_day').val(freeday_value);
    }

并使用.inArrayif ()条件

中进行比较

答案 1 :(得分:1)

您应该查看jQuery.inArray功能。

喜欢

if( $.inArray($("#date").val(), holidayDays)>=0) {  
    var freeday_value = 'holiday';
    $('#holiday_day').val(freeday_value);
}

你应该试试这个

var holidayDays = ['24/12/2012', '2/1/2013', '14/2/2013'];

$("#date").datepicker({"dateFormat":"dd/mm/yy", "onSelect":CheckForHoliday});

function CheckForHoliday(dateStr){
    if( $.inArray(dateStr, holidayDays)>=0) {  
        var freeday_value = 'holiday';
        $('#holiday_day').val(freeday_value);
    }else{
        $('#holiday_day').val('');
    }
}

选中 DEMO

答案 2 :(得分:0)

if( $.inArray($("#date").val(), holidayDays) ) {  
  $('#holiday_day').val('holiday');
}
else{
 $('#holiday_day').val(''); 
}