动态禁用日期选择器JavaScript

动态禁用日期选择器JavaScript,javascript,datepicker,frontend,jquery-ui-datepicker,Javascript,Datepicker,Frontend,Jquery Ui Datepicker,我想使用数组动态禁用天 替换代码: var monday = 1; var tuesday = 2; 使用数据库中的动态值 var disabledDay = ["1","2","3"]; 我们非常感谢您的帮助,谢谢 旧代码 jsFiddle: $(“#选取器”).datepicker( {beforeShowDay:函数(日){ var string=jQuery.datepicker.formatDate('yy-mm-dd'

我想使用数组动态禁用天

替换代码:

var monday = 1;
var tuesday = 2;
使用数据库中的动态值

 var disabledDay = ["1","2","3"];
我们非常感谢您的帮助,谢谢

旧代码

jsFiddle:

$(“#选取器”).datepicker(
{beforeShowDay:函数(日){
var string=jQuery.datepicker.formatDate('yy-mm-dd',day);
var day=day.getDay();
var=1;
var=2;
如果(日!=星期一和日!=星期二){
返回[真]
}否则{
返回[假]
}  
}
});
$(“#picker”).datepicker();

我想你想要这样的东西


这假定服务器以字符串形式返回值。如果您不需要字符串,只需删除映射筛选器行即可。

这可能会起作用,但我使用的环境是旧版本的javascript。您可以将其转换为不使用更高版本javascript的javascript吗?@Nico您可以使用
const disabledDays=[“1”、“2”、“3”]进行翻译。映射(编号)
 $("#picker").datepicker(
    { beforeShowDay: function(day) {
  
    var string = jQuery.datepicker.formatDate('yy-mm-dd', day);
    var day = day.getDay();
    var monday = 1;
    var tuesday = 2;

    if (day != monday && day != tuesday){
      return [ true ]
    } else {
      return [ false ]
    }  
     }
});


$('#picker').datepicker();

<div id="picker"></div>

const disabledDays = ["1", "2", "3"]
    .map((n) => parseInt(n))
    .filter((n) => !isNaN(n));

$("#picker").datepicker({
    beforeShowDay: function(day) {
        return [!disabledDays.includes(day.getDay())];
    }
});


$('#picker').datepicker();