jquery ajax加载递归回调

时间:2015-04-23 02:45:40

标签: jquery

这是我的jquery函数,我陷入了循环回调函数。我想知道如何将此代码转换为自己调用?或者甚至可能吗?

$('#content').load('myurl/items', function() {
    ...
    ...
    $(this).find('form').submit(function(e) {
        e.preventDefault();
        $.ajax({
            type: 'POST',
            url: 'myurl/items',
            context: document.getElementByID('content'),
        }).done(function() {
            $(this).load('/myurl/items', function(){}); // This is recursive
        });    
    }
});

1 个答案:

答案 0 :(得分:1)

声明一个函数:

function loadItems() {
    $('#content').load('myurl/items', function() {
        ...
        ...
        $(this).find('form').submit(function(e) {
            e.preventDefault();
            $.ajax({
                type: 'POST',
                url: 'myurl/items',
                context: document.getElementByID('content'),
            }).done(function() {
                loadItems(); // Call the function to continue
            });    
        }
    });
}

loadItems(); // Call the function to start

当然,如果ajax调用不成功,循环将结束。