0

我正在动态地隐式创建一些 HTML,以注入到 DOM 中。

但是,我必须注入的 HTML 块,我需要使用 jQuery 来选择一个元素并对其进行处理。

我知道$("#element")从活动 DOM 中选择,但是无论如何提供 jQuery 一大块 HTML 作为字符串并让它从中选择呢?

例如,这里有一些伪代码

var html = '<div><span id="selectMe"></span></div>';
// below obviously doesn't work as it'd select from the active DOM
var html = $("#selectMe").html("injected");

有没有办法让 jQuery 不从 DOM 中选择,而是从包含 HTML 的变量中选择?

4

2 回答 2

1

您可以使用

var html = '<div><span id="selectMe"></span></div>';
var $html = $(html);
$html.find('#selectMe').html("injected");

注意:字符串html不会使用新标记进行更新,但 dom 结构$html将包含更新

于 2013-10-31T06:44:51.460 回答
1

尝试

var html = '<div><span id="selectMe"></span></div>';
var html_var = $(html);
html_var.children('#selectMe').html("injected");

参考

。孩子们()

于 2013-10-31T06:45:30.790 回答