我有以下代码:
$.ajax({
type: "GET",
url: "AJAX.ashx?job=fetch_calendar",
dataType: "html",
success: function (html) {
$("#calendar_system").cycle("destroy").html(html);
if ($("#calendar_system:not(:has(span.no_calendar_items))")) {
$("#calendar_system").cycle({ fx: "scrollUp", timeout: 6000, cleartype: 1, speed: 800 });
}
}
});
这会更新日历列表并循环显示项目。但即使有span.no_calendar_items
,它也会循环 - 为什么会这样?我在做任何事之前都要破坏循环,以确保它消失。但它似乎没有起作用。
AJAX函数每10分钟运行一次(setInterval())。
为什么呢? : - )
答案 0 :(得分:2)
($("#calendar_system:not(:has(span.no_calendar_items))"))
是一个jQuery对象,所以它总是评估为true。您需要测试其长度是否大于零:
if ($("#calendar_system:not(:has(span.no_calendar_items))").length) {