daySettings [2] .replace不是函数jquery日期选择器

时间:2016-07-30 13:47:27

标签: javascript jquery arrays uidatepicker jquerydatetimepicker

我收到jquery版本的错误:

<script src="js/Common/jquery-2.1.1.min.js" type="text/javascript"></script>
 <script src="https://code.jquery.com/ui/1.12.0/jquery-ui.js"></script>

我的代码是:

var storedData = '["08/11/2016","07/31/2016"]';

        if( storedData !== null){
       var eventDatesarray = JSON.parse(storedData);
        var eventDates = [];

        $.each(eventDatesarray, function( index, value ) {
        var newdatepush = new Date(value);
        eventDates.push(newdatepush);
        eventDates[newdatepush] = newdatepush;
        });
        // An array of dates

        // datepicker
        jQuery('#ScheduleNextVisitCal').datepicker({
            beforeShowDay: function( date ) {
                var highlight = eventDates[date];
                if(highlight) {
                     return [true, "event", highlight];
                } else {
                     return [true, '', ''];
                }
             }
        });

}
else 
{
  $( function() {
    $("#ScheduleNextVisitCal" ).datepicker();
    });

      }

问题陈述:

我想通过jquery datepicker突出显示我将在“storedData”中获得的具体日期。

惊喜因素: //ajax.googleapis.com/ajax/libs/jquery/1.7.0/jquery.min.js //ajax.googleapis.com/ajax/libs/jqueryui/1.8.16/jquery-ui.min.js

如果我使用这些库,那么我的代码工作正常但不知何故我无法更改库

错误名称: daySettings [2] .replace不是函数

问题代码:http://codepen.io/srawal/pen/KrBkVG

具有不同库的相同代码正常工作:http://codepen.io/srawal/pen/grjoAx

1 个答案:

答案 0 :(得分:10)

eventDates[ new Date( '09/04/2016' )] = new Date( '09/04/2016' ).toString(); eventDates[ new Date( '09/06/2016' )] = new Date( '09/06/2016' ).toString(); eventDates[ new Date( '09/20/2016' )] = new Date( '09/20/2016' ).toString(); eventDates[ new Date( '09/25/2016' )] = new Date( '09/25/2016' ).toString();

这很有效。不要将日期传递给数组。它需要一个字符串。在将日期放入数组之前将日期转换为字符串。有用。