1

在我有以下 jQuery 之前:

var dialogDiv = "<div id='" + dialogId + "'></div>";

$(dialogDiv).load(href, function () {
    ...

它工作得很好。

现在我改变了一点:

var dialogDiv = "<div id='" + dialogId + "' class='modal hide fade'><div class='modal-body'><p class='body'></p></div></div>";

$('.modal-body p.body').load(href, function () {
    ...

现在什么都没有加载到我的 jQuery 对话框中。任何想法?

谢谢。

4

3 回答 3

3

问题是这些元素还不存在于 DOM 中。将其包装在一个 jQuery 对象中:

var $dialogDiv = $("<div id='" + dialogId + "' class='modal hide fade'><div class='modal-body'><p class='body'></p></div></div>");

$dialogDiv.find('.modal-body p.body').load(href, function () {

编辑:最终你必须在 DOM 中插入该对象。您可以链接insertAfter($bla)load()事件。

于 2012-04-19T07:46:34.307 回答
0

您正在尝试获取 DOM 树中尚不可用的元素,您可以在调用 load() 之前将其注入,也可以在加载内容之前将其包装到 jQuery 对象中:

var dialogDiv = $("<div id='" + dialogId + "' class='modal hide fade'><div class='modal-body'><p class='body'></p></div></div>");

$('.modal-body p.body', dialogDiv).load(href, function () { ... }
于 2012-04-19T07:53:33.057 回答
0

“隐藏”类是否显示对话框 div?如果为 true,则目标元素不可见;)

于 2012-04-19T07:46:23.280 回答