我正在使用jquery fullcalendar效果很好。我遇到的一个问题是,如果您单击向前或向后快速浏览多个月份,它仍然会尝试触发多个 ajax 请求,并且它不会等待查看您是否真的“安定”在该月。
我基本上希望它在触发 ajax 事件之前等待 1 秒,以确保用户不会再次单击“下一步”。
这在jquery完整日历中可能吗?我本以为具有以下功能和其他高级功能的插件会有这个
最佳答案
JQuery 拥有一整套 Ajax 事件处理程序,例如 ajaxSend , ajaxPrefilter和 ajaxStart .
使用 ajaxPrefilter() 方法,您可能可以在发送 Ajax 请求之前捕获它,延迟它,如果在时间范围内未检测到月份导航器按钮上的单击事件,则发送请求,否则中止它。
这是一个有点人为的示例,但沿着这些思路可能会接近您想要的:
var enableRequest = true;
$.ajaxPrefilter( function( options, originalOptions, jqXHR ) {
// Modify options, control originalOptions, store jqXHR, etc
if (!enableRequest ){
jqXHR.abort();
}
});
$('span.fc-button-prev, span.fc-button-next').click(function(){
enableRequest = false;
setTimeout("setEnabled()", 2000)
});
function setEnabled()
{
enableRequest = true;
});
关于jquery - 您可以在 jQuery FullCalendar 中延迟 AJAX 请求(月份更改)吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/9969438/