[英]How to refresh event dates in calendar (datepicker)
其实我有两个问题
1-我试图在日历中突出显示某些日期,但是,页面加载后样式不起作用,除非我点击日历然后它将起作用
2-当我保存一些文本时,我想刷新日历以突出显示这个新的事件日期,如果我只记得函数没有发生任何事情,可能是因为我已经初始化了数据贴纸
对于第一个问题,我在初始化datepicker后尝试添加这些命令 - $('.ui-datepicker-current-day').click();
- $("#datepicker").trigger("click");
- $('#datepicker').datepicker("refresh");
这是获取事件日期的代码
function EventDates() {
var apiURL = '@Url.Content("~")api/GeDate';
var eventDates = {};
$.ajax({
url: apiURL,
success: function (data) {
$.each(data, function (i, item) {
//alert(item.Date1)
eventDates[new Date(item.Date1)] = new Date(item.Date1);
});
}
})
// datepicker
$('#datepicker').datepicker({
numberOfMonths: [3, 1],
dateFormat: "mm/dd/yy",
onSelect: function (dateText, inst) {
jQuery('#calendar_date').val(dateText);
CheckDate();
},
beforeShowDay: function (date) {
var highlight = eventDates[date];
if (highlight) {
return [true, "event", 'There is a text'];
} else {
return [true, '', ''];
}
}
});
// $('#datepicker').datepicker("refresh");
}
function Save()
{
var params = [];
// globalDeptID
params.push({ name: "Date", value: $('#calendar_date').val()});
params.push({ name: "Message_E", value:$('#EN').val() });
params.push({ name: "CreatedBy", value: '@ViewBag.ID' });
params.push({ name: "ModifiedBy", value: '@ViewBag.ID'});
var apiURL = '@Url.Content("~")api/InsertAndUpdate';
$.ajax({
url: apiURL,
data: params,
type: "POST",
success: function (data, textStatus, jqXHR) {
swal("Success", "The message has been saved successfully.", "success"); EventDates();
$("#datepicker").datepicker("refresh");
},
error: function (err) {
//alert("An error occured. Could not submit your request.");
swal({
text: "An error occured.",
icon: "error"
});
}
})
}
正如您在保存功能中看到的,我在保存数据后回想起eventDates的功能
EventDates();
$("#datepicker").datepicker("refresh");
我找到了两个问题的解决方案
我把datepicker放入ajax调用,第二个问题我销毁了datepicker然后我重新初始化了它
$("#datepicker").datepicker("destroy");
EventDates();
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.