我有一个JQuery函数,我只使用“ beforeShowDay ”函数启用了几个日期。 我正在使用onSelect函数来获取所选日期。 幸运的是,这两个都很好。 但是这里有一个问题一旦我选择了一个日期,它的背景只会在很短的时间内再次变化,突出显示的背景会回到当前日期。 如果我删除onSelect功能,那么它的工作正常。 请帮助我的代码:
var dates = [[2013, 2, 1],[2013, 2, 9],[2013, 2, 25],[2013,3,15]];
$(function(){
$('[id="form1:kix_inline"]').datepicker(
{
beforeShowDay: function (date)
{
var x= dates.length;
var year = date.getFullYear(), month = date.getMonth(), day = date.getDate();
for (var i=0; i < x; i++)
{
if (year == dates[i][0] && month == dates[i][1] - 1 && day == dates[i][2])
{
return [true, 'ui-state-highlight ui-state-active'];
}
}
return [false];
},
onSelect: function(value, date) {
var frm = document.getElementById("sendDateForm");
frm.submit();
}
});
});
问题: 最初只启用几个日期(在“日期”上方的数组中提到)。一旦我点击任何一个日期,“当前日期样式”将只在那里停留几秒钟。它会再次反弹回当前日期。
请帮忙[对不起,我的解释不明确]
答案 0 :(得分:1)
看起来你在onSelect函数中提交了一个表单:
var frm = document.getElementById("sendDateForm");
frm.submit();
提交重新加载页面,这就是为什么它只闪烁正确的颜色,然后恢复到原始日期,页面重新加载!如果您需要发送表单,而不是重新加载页面,则必须使用ajax。