追加元素直到 - 使用动态添加元素时使用

时间:2011-05-16 14:26:32

标签: javascript jquery while-loop

我有添加到div容器div的函数

 $.ajax(
    {
        type: "GET",
        url: "/LoadedData",
        data: { "pageNumber": pageNumber },
        success: function (result) {
            $('.Container').append(result);
        }
    }

我想执行该函数,直到这个div容器包含div为xxx

我尝试使用while循环执行此操作,但看起来就像我这样做:

while($('.Container div').is('#xxx'))
{}

函数看不到新的div附加到Container:/

2 个答案:

答案 0 :(得分:1)

如果callback:与您的选择器不匹配,请将代码放在result中递归调用的函数中。

它将继续运行,直到选择器匹配。

var container = $('.Container');  // cached the .Container element

function add_to_container() {

   $.ajax(
    {
        type: "GET",
        url: "/LoadedData",
        data: { "pageNumber": pageNumber },
        success: function (result) {
            container.append(result);
            if( !$(result).is("#xxx") ) {  // if the result was not the one...
                add_to_container();       // ...recursively call the function
            }
        }
    }
}

答案 1 :(得分:0)

Jquery具有迭代dom元素的每个函数。

$('.Container div').each(function(){});