异步加载页面时,dhtmlx 调度程序不会呈现(ajax 页面)
dhtmlx scheduler wont render when page load asychronously (ajax page)
我正在使用这个很酷的 javascript scheduler。起初我通过
在我的页面加载它
function get_dependencies() {
//event calendar
$(".myscheduler").dhx_scheduler({
xml_date: "%Y-%m-%d %H:%i",
date: new Date(2014, 4, 25),
mode: "month"
});
scheduler.load($("body").attr("data-link") + "/core/plugins/dhtmlcalendar/events.xml");
}
然后调用函数
$(window).load(function(){
get_dependencies();
});
然后当点击任何导航时(与 ajax 页面相关的导航)调用页面并再次呈现调度程序
$.ajax({
url: '/ajax-page',
type: 'post',
dataType: 'html',
beforeSend: function () {
$("#loading").show();
},
data: {
page: this_tab_content_link,
_token: $("body").attr("data-token")
},
success: function (data) {
$(".active_tab_content").html(data);
if ($(this).hasClass("reload_dependencies")) {
get_dependencies();
}
$("#loading").hide();
}
});
但遗憾的是,在将 html 数据(ajax 页面响应)放入指定容器后,调度程序没有呈现(没有显示日历调度程序)。有什么想法、帮助、建议、推荐、帮助吗?
将相关上下文设置为ajax回调,代码中的this
是jqXHR选项对象。将 ajax 选项 context
设置为 this
:
$.ajax({
context: this,
/*...*/
});
我正在使用这个很酷的 javascript scheduler。起初我通过
在我的页面加载它function get_dependencies() {
//event calendar
$(".myscheduler").dhx_scheduler({
xml_date: "%Y-%m-%d %H:%i",
date: new Date(2014, 4, 25),
mode: "month"
});
scheduler.load($("body").attr("data-link") + "/core/plugins/dhtmlcalendar/events.xml");
}
然后调用函数
$(window).load(function(){
get_dependencies();
});
然后当点击任何导航时(与 ajax 页面相关的导航)调用页面并再次呈现调度程序
$.ajax({
url: '/ajax-page',
type: 'post',
dataType: 'html',
beforeSend: function () {
$("#loading").show();
},
data: {
page: this_tab_content_link,
_token: $("body").attr("data-token")
},
success: function (data) {
$(".active_tab_content").html(data);
if ($(this).hasClass("reload_dependencies")) {
get_dependencies();
}
$("#loading").hide();
}
});
但遗憾的是,在将 html 数据(ajax 页面响应)放入指定容器后,调度程序没有呈现(没有显示日历调度程序)。有什么想法、帮助、建议、推荐、帮助吗?
将相关上下文设置为ajax回调,代码中的this
是jqXHR选项对象。将 ajax 选项 context
设置为 this
:
$.ajax({
context: this,
/*...*/
});