【问题标题】:daySettings[2].replace is not a function jquery date pickerdaySettings[2].replace 不是函数 jquery 日期选择器
【发布时间】:2016-07-30 13:47:26
【问题描述】:

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

【问题讨论】:

  • 什么是daySettings & 你的代码在哪里?
  • liberay 的这个问题:这里的代码:codepen.io/srawal/pen/KrBkVG 打开控制台 > 按箭头将月份更改为 9 月 > daySettings[2].replace 不是浏览器控制台中的功能

标签: javascript jquery arrays uidatepicker jquerydatetimepicker


【解决方案1】:

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();

这行得通。不要将日期传递到数组中。它需要一个字符串。在将日期放入数组之前将其转换为字符串。有用。

【讨论】:

  • 这真的很有帮助。这对我来说节省了时间。 :)
猜你喜欢
  • 2016-05-11
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2017-08-11
  • 1970-01-01
  • 2012-09-11
  • 2011-11-06
  • 1970-01-01
相关资源
最近更新 更多