Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jquery-ui/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery datepicker Error=Uncaught TypeError:无法读取属性';0';未定义的_Jquery_Jquery Ui_Jquery Ui Datepicker - Fatal编程技术网

Jquery datepicker Error=Uncaught TypeError:无法读取属性';0';未定义的

Jquery datepicker Error=Uncaught TypeError:无法读取属性';0';未定义的,jquery,jquery-ui,jquery-ui-datepicker,Jquery,Jquery Ui,Jquery Ui Datepicker,无法使jQueryUI datepicker选项在ShowDay之前工作 我尝试了我找到的不同的帮助主题,但我无法让它工作 我得到这个错误 未捕获的TypeError:无法读取未定义的属性“0” 这是我的JS。但它似乎不起作用 <script type="text/javascript"> jQuery(document).ready(function () { var your_dates = [new Date(13, 5, 5), new Date(13, 5, 10)

无法使jQueryUI datepicker选项在ShowDay之前工作

我尝试了我找到的不同的帮助主题,但我无法让它工作

我得到这个错误

未捕获的TypeError:无法读取未定义的属性“0”

这是我的JS。但它似乎不起作用

<script type="text/javascript">
jQuery(document).ready(function () {
    var your_dates = [new Date(13, 5, 5), new Date(13, 5, 10)];
    jQuery("div#event-calender").datepicker({
        beforeShowDay: function (date) {
            if (jQuery.inArray(date.toString(), your_dates) != -1) {
                return [true, 'highlight'];
            }
        }
    });
});
</script>

jQuery(文档).ready(函数(){
var your_dates=[新日期(13,5,5),新日期(13,5,10)];
jQuery(“div#event calendar”).日期选择器({
beforeShowDay:功能(日期){
if(jQuery.inArray(date.toString(),您的_日期)!=-1){
返回[真,'突出显示'];
}
}
});
});

您需要始终返回数组,而不仅仅是在条件匹配时

从:

展览日前

类型:函数(日期)

以日期作为参数的函数,必须返回数组

展会日前
以日期为参数且必须返回数组的函数 与:

  • true/false,指示此日期是否可在CSS中选择
  • 要添加到日期单元格的类名,或默认为“”
  • 演示文稿此日期的可选弹出工具提示
在开始之前,每天都在datepicker中调用该函数 展示

将您的
节目日前更改为

beforeShowDay: function (date) {
    if (jQuery.inArray(date.toString(), your_dates) != -1) {
        return [true, 'highlight'];
    } else {
        return [true, ''];
    }
}
var your_dates = [new Date(2013,5,5).toString(), new Date(2013,5,10).toString()];
编辑
将您的日期更改为

beforeShowDay: function (date) {
    if (jQuery.inArray(date.toString(), your_dates) != -1) {
        return [true, 'highlight'];
    } else {
        return [true, ''];
    }
}
var your_dates = [new Date(2013,5,5).toString(), new Date(2013,5,10).toString()];
或者使用类似的方法,而不是使用
jQuery.inArray(…)


这对我很有帮助,谢谢。但我认为所有元素都是“未突出显示”的。你知道这个问题是什么吗?我应该选择其他日期格式吗?这真的是您期望的日期吗?
新日期(13,5,5)==“1913年6月5日”
?不,我的数组现在看起来是这样的
var your_dates=[新日期(2013,05,05),新日期(2013,05,10)]但仍然没有人得到突出显示的类谢谢,这是一个很明显的问题,节省了我一些调试时间来真正找到问题所在,因为js error没有显示文件的确切行+1:)