上下文 我目前正在处理正在重构的应用程序,以便用户可以选择以一种或另一种语言显示它。一切都经历了“语言转换”就好了......除了一些小部分。
问题:
javascripts中的minDate
在引入语言变量后停止了合作。它应该显示当前日期,用于确保dateEnd
不能是当前日期/今天(= minDate
和= dateFrom
)之前的日期,但它现在不再起作用了。
function initDatepickers(){
$(".datepicker").datepicker({
dateFormat: "dd-mm-yy",
//minDate: 0,
});
$("#dateFrom").change(function(){
$("#dateEnd").datepicker('option', 'minDate', $('#dateFrom').val());
});
$(".datepicker" ).datepicker("option",$.datepicker.regional[$("#language").val()]);
};
来自另一个Javascript文件的另一个代码段,其中minDate
不再起作用:
var dateToday = new Date();
$(".datepicker").datepicker({
dateFormat:'dd-mm-yy',
beforeShowDay: function(date){
var day = date.getDay();
var daysToDisable = [1,2,3,4,5,6];
for (i = 0; i < daysToDisable.length; i++) {
if ($.inArray(day, daysToDisable) != -1) {
return [false];
}
}
return [true];
},
minDate: dateToday
});
任何人都可以解释为什么minDate
可能已停止工作,我错过了什么?
提前致谢!如果您需要更多信息,请与我们联系,
我对javascript很新,我希望我能够清楚地解释我的问题。
答案 0 :(得分:0)
似乎问题是我们不再使用的一段代码,但在重构除了多语言之外的事情时忘了删除! ( the evil-doer位于.jsp中,所以问题不在于javascript代码!)
发生了什么:会话在.jsp页面上被硬编码设置为false
,而它必须是默认值。在这种情况下,当语言变量与datepicker
一起使用时,它会受到干扰。
删除将会话设置为false的代码后,所有内容都会再次起作用。