2

我想选择最近创建的元素做这样的事情:

$("body").append("<div id='popup.dialog'></div>");
dialogDiv = $("#popup.dialog");

但是在执行这个 dialogDiv 之后什么都没有。那么有没有办法选择新创建的元素?

4

4 回答 4

2

两件事情:

1) 不要在你的 id 中使用句点

2)你可以这样做更好一点:

var dialogDiv =$('<div id="popup-dialog"></div>').appendTo('body');

此时您可以链接更多,或者只使用dialogDiv变量。

这会阻止您通过选择您已经有权访问的元素来影响性能。

于 2009-10-21T10:27:21.670 回答
1

点在 ID 中无效。#popup.dialog搜索<div id='popup' class='dialog'>. 你应该用破折号代替它,比如

$("body").append("<div id='popup-dialog'></div>");
dialogDiv = $("#popup-dialog");
于 2009-10-21T10:27:26.677 回答
0

我认为您的问题出.在 id 中。

原因是,jQuery 使用.来匹配类,所以你正在寻找一个 id = popup 和 class = dialog 的元素

于 2009-10-21T10:25:52.513 回答
0

你不能有.一个 id。

试试这个:

$("body").append("<div id='popup-dialog'></div>");
dialogDiv = $("#popup-dialog");
于 2009-10-21T10:26:19.237 回答