附加元素直到 - 使用 while 动态添加元素

发布于 2024-11-08 05:32:14 字数 443 浏览 1 评论 0原文

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

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

,我想执行该函数,直到这个 div 容器包含带有 is xxx 的 div

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

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

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

I have function that add to div container div's

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

and I want to execute that function until this div container contains div with is xxx

I try to do this with while loop but is looks like when i do :

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

function not see new div's appended to Container :/

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

横笛休吹塞上声 2024-11-15 05:32:14

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

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

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
            }
        }
    }
}

Place your code in a function that is recursively called in the callback: if the result did not match your selector.

It will continue to run until the selector is matched.

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
            }
        }
    }
}
像你 2024-11-15 05:32:14

Jquery 有each 函数来迭代dom 元素。

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

Jquery has the each function to iterate over dom elements.

$('.Container div').each(function(){});
~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文