使用 jQuery 将 HTML 字符串转换为 DOM 对象

发布于 2024-12-22 23:52:16 字数 175 浏览 2 评论 0原文

我在 JavaScript 字符串中有 HTML(包含通常的嵌套 HTML)。使用 jQuery,我可以使用任何 document.create* 函数将其一次性转换为有效的 HTML 元素吗?我的要求是在创建的 DOM 对象上使用 document.getElementById

I have HTML in a JavaScript string (containing usual, nested HTML). Using jQuery, can I convert that into a valid HTML element in a single stroke using any of the document.create* functions? My requirement is to use document.getElementById on the created DOM object.

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

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

发布评论

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

评论(4

雪落纷纷 2024-12-29 23:52:16

举个简单的嵌套例子。

var dom_string = '<div>xxx<div>yyy</div></div>';

使用 jquery 的 $() 函数创建 HTML DOM 元素并附加到您想要的任何位置。
我已经采取了“身体”,但你可以附加到任何地方。

$(dom_string).appendTo('body');

或者,您可以使用纯 JavaScript 来实现:

var dom_target = document.getElementById("target");
dom_target.innerHTML = dom_string;

Take simple nested example.

var dom_string = '<div>xxx<div>yyy</div></div>';

create HTML DOM elements using $() function of jquery and append wherever you want.
i have taken 'body' but you can append anywhere.

$(dom_string).appendTo('body');

Alternatively you can implement this with pure javascript:

var dom_target = document.getElementById("target");
dom_target.innerHTML = dom_string;
网名女生简单气质 2024-12-29 23:52:16

创建一个虚拟元素并将其 innerHTML 设置为您的 HTML 字符串。

Create a dummy element and set its innerHTML to your HTML string.

萌酱 2024-12-29 23:52:16
// Construct a container as a placeholder for your content

var container = document.createElement('div');
container.id = 'container';

// Inject the container into the DOM

document.body.appendChild(container);

// Populate the injected container with your content

container.innerHtml = '<p id="pTag">I am a <em>P</em> tag with some <strong>nested markup</strong>.</p>';
// Construct a container as a placeholder for your content

var container = document.createElement('div');
container.id = 'container';

// Inject the container into the DOM

document.body.appendChild(container);

// Populate the injected container with your content

container.innerHtml = '<p id="pTag">I am a <em>P</em> tag with some <strong>nested markup</strong>.</p>';
故事还在继续 2024-12-29 23:52:16

要将 Html 文本转换为 Jquery-Object,请使用 $() 函数:

div = '<div>hello world</div>';
$div = $(div);

但正如其他人所指出的,在大多数情况下,您不需要它,因为 DOM 操作函数(如append() 和 prepend())将接受纯文本,所以

$('body').append('<div>hello world</div>');

绝对是美好的。

To convert Html text into a Jquery-Object use the $() function:

div = '<div>hello world</div>';
$div = $(div);

But as others have noted in most cases you don't need that because DOM manipulation functions like append() and prepend() will accept plain text, so

$('body').append('<div>hello world</div>');

is absolutely fine.

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