【问题标题】:$.ajax load in UI dialog() append issueUI 对话框中的 $.ajax 加载()附加问题
【发布时间】:2011-01-31 07:53:33
【问题描述】:

我正在将来自 ajax dataType:jsonp 的数据加载到 jquery UI 对话框()中。 通过将结果附加到 <li>

来显示数据
$.each(data.SearchResponse.Image.Results,
    function(i, item) {
        console.log(item.Thumbnail.Url);
        $("#Results").append("<li><img style='width:100px; height:75px;' src='" + item.Thumbnail.Url + "'/></li>");
    });
}

如果我打开了 2 个 dialog() 实例,则第一个对话框能够获取并附加结果,而第二个对话框正在获取结果,但不能附加结果。

第二种情况是,如果我只打开一个对话框,那么我可以看到结果,但如果我关闭它并再次打开它,则不再附加结果。我确实在 console.log 中看到了结果,但它只是没有被附加,为什么会这样。

是什么原因造成的。

【问题讨论】:

    标签: jquery ajax dialog jsonp


    【解决方案1】:

    您是否有两个 id="Results" 的 div?尝试给它们单独的名称,或使用 class="Results" 并将 #Results 更改为 .Results?如果有两个具有相同 id 的元素,jQuery 只允许您修改第一个元素。

    【讨论】:

    • 谢谢你这样做。我引用了 class 而不是 id 并且做到了。我只是想知道为什么它不适用于一个对话框案例,如果我第一次打开对话框它可以工作,但是如果我关闭它然后打开它,它就不再工作了。为什么关闭和打开后对话框将 ID 计数为两次。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2011-07-29
    • 2011-07-08
    相关资源
    最近更新 更多