jquery - 您可以在 jQuery FullCalendar 中延迟 AJAX 请求(月份更改)吗?

标签 jquery ajax fullcalendar

我正在使用jquery fullcalendar效果很好。我遇到的一个问题是,如果您单击向前或向后快速浏览多个月份,它仍然会尝试触发多个 ajax 请求,并且它不会等待查看您是否真的“安定”在该月。

我基本上希望它在触发 ajax 事件之前等待 1 秒,以确保用户不会再次单击“下一步”。

这在jquery完整日历中可能吗?我本以为具有以下功能和其他高级功能的插件会有这个

最佳答案

JQuery 拥有一整套 Ajax 事件处理程序,例如 ajaxSend , ajaxPrefilterajaxStart .

使用 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/

相关文章:

javascript - 使用 jQuery 运行 JavaScript 函数构建时出现问题

javascript - 将 id 值传递给 ajax 页面

javascript - 无需使用 jquery 插件即可编辑表格

javascript - Summernote上传图片: onImageUpload and sendFile function not working

javascript - Angular ui-calendar 事件函数被调用两次

jquery - FullCalendar 和 MySQL——跨多个月的事件

jquery - 模态弹出代码放置

jquery - 如何使用 jQuery .data() 来存储 html?

jquery - 如何使用 jQuery 获取点击元素的 ID

jquery fullcalendar 插件一次查看超过 1 个月