如何在javascript中将颜色设置为特定日期

如何在javascript中将颜色设置为特定日期,javascript,angular,Javascript,Angular,当我使用上面的代码时,它会更改所有日期的颜色。但我想更改特定日期的颜色。只需使用简单的if条件,注意变量和函数参数名称都是相同的,这会导致问题。 我假设您的参数是字符串 var active_dates1 = ["2017-04-02 00:00:00","2014-04-03 00:00:00","2014-04-01 00:00:00"]; $('.datePick', this.$el).datepicker( beforeShowDay: function (d

当我使用上面的代码时,它会更改所有日期的颜色。但我想更改特定日期的颜色。

只需使用简单的if条件,注意变量和函数参数名称都是相同的,这会导致问题。 我假设您的参数是字符串

var active_dates1 = ["2017-04-02 00:00:00","2014-04-03 00:00:00","2014-04-01 00:00:00"];
    $('.datePick', this.$el).datepicker(

        beforeShowDay: function (date) {
            for(let date1 of active_dates1){
            if (date.getTime() === new Date(date1).getTime()) {
                return { classes: 'activeClass' };
            }
            else {
                return {};
            }
            }

        }
    });
根据需要,返回的对象必须是数组。对于启用或禁用日期选择,第一个文本为true/false,第二个文本为CSS类。 最后的代码是这样的

beforeShowDay: function (date) {
    for (let item of active_dates1) {
       if(item == date)
          return { classes: 'activeClass' };
       else // return empty object or or somthing else
          return {};
    }
}

您在哪里应用的条件是,在哪个日期颜色将发生变化?我不知道为什么,但你的代码似乎是错误的活动日期1中有哪些日期,我必须更改颜色你的代码和解释不清楚,请在代码和问题中进行一些更改,以使此问题更清晰日期在数组“活动日期1”中可用,对他们来说,我必须改变颜色,比如红色或蓝色……那么你能告诉我,我该如何感谢你的评论,现在它正在发挥作用。我已经编辑了我的问题。现在我传递了不止一个值,但它只是根据文档更改arraychanged方法结果类型的第一个值的颜色
 if (date.getTime() === new Date(date1).getTime()) {
     return [true,'activeClass'];
 }
 else {
     return [true,''];
 }