Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/394.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
Javascript Bootstrap Datepicker beforeShowDay:函数(日期)日期未定义_Javascript_Twitter Bootstrap_Datepicker - Fatal编程技术网

Javascript Bootstrap Datepicker beforeShowDay:函数(日期)日期未定义

Javascript Bootstrap Datepicker beforeShowDay:函数(日期)日期未定义,javascript,twitter-bootstrap,datepicker,Javascript,Twitter Bootstrap,Datepicker,我想在一个日期采集器中记录一些日期。但“日期”在disableDates中始终未定义。有什么我遗漏的吗?我是javascript新手,所以可能有些东西我还不太了解 ko.bindingHandlers.datepicker = { init: function(element, valueAccessor, allBindingsAccessor) { var options = allBindingsAccessor().datepickerOptions || {},

我想在一个日期采集器中记录一些日期。但“日期”在disableDates中始终未定义。有什么我遗漏的吗?我是javascript新手,所以可能有些东西我还不太了解

ko.bindingHandlers.datepicker = {
    init: function(element, valueAccessor, allBindingsAccessor) {
        var options = allBindingsAccessor().datepickerOptions || {},
            $el = $(element);


        //initialize datepicker with some optional options
        $el.datepicker(options);
        $el.datepicker('setEndDate', new Date);
        $el.datepicker('beforeShowDay', disableDates());

        function disableDates(date) {
            self.getDates();
            var showDate = true;
            for (var i = 0; i < self.dates.length; i++) {
                if (date.toDateString() === new Date(self.dates()[i].ReportingDate).toDateString()) {
                    showDate = false;
                }
            }
            return [showDate, ""];

        }

        //handle the field changing
        ko.utils.registerEventHandler(element, "change", function() {
            var observable = valueAccessor();
            observable($el.datepicker("getDate"));
        });

        //handle disposal (if KO removes by the template binding)
        ko.utils.domNodeDisposal.addDisposeCallback(element, function() {
            $el.datepicker("destroy");
        });
    },

    update: function (element) {
        var value = self.ReportingDate(),
            $el = $(element),
            current = $el.datepicker("getDate");
        if (value - current !== 0) {
            $el.datepicker("setDate", value);
        }
    }
};
ko.bindingHandlers.datepicker={
init:function(元素、valueAccessor、allBindingsAccessor){
var options=allBindingsAccessor().datepickerOptions | |{},
$el=$(元素);
//使用一些可选选项初始化日期选择器
$el.datepicker(可选);
$el.datepicker('setEndDate',新日期);
$el.datepicker('beforeShowDay',disableDates());
功能禁用日期(日期){
self.getDates();
var showDate=true;
对于(var i=0;i
})

试试看

//initialize datepicker with some optional options
$.extend(options, {
    beforeShowDay: disableDates
})
$el.datepicker(options);
$el.datepicker('setEndDate', new Date);

当我尝试时,它从未进入函数。@LadyBug在打开datepicker@LadyBug此外,没有名为
setEndDate
的方法,您想用它做什么it@LadyBug一个简单的jQuery示例看起来像setEndDate禁用了今天之后的所有日期。这个很好用。但即使我打开日期选择器,也不会调用beforShowDay。