Javascript 将HTML字符串转换为DOM元素?

Javascript 将HTML字符串转换为DOM元素?,javascript,html,Javascript,Html,说有, var some_html = '<div class = "am_hold">' + '<img name="bo_im" id="' + val.id + '" class="bookmark_image" src="' + val.favicon + '">' + '<a target="_blank" name="bookmark_link" class="bookmark_link" href = "' + val.url

说有,

var some_html = '<div class = "am_hold">' +
    '<img name="bo_im" id="' + val.id + '" class="bookmark_image" src="' + val.favicon + '">' +
    '<a target="_blank" name="bookmark_link" class="bookmark_link" href = "' +
    val.url + '" id="' + val.id + '">' + val.title + '</a>' +
    '<div><div class = "bookmark_menu"></div></div>' +
    '</div>';

是否有一些函数的实现(1)不使用库,(2)使用库。

为HTML创建一个临时容器,然后获取其内容。比如:

var d = document.createElement('div');
d.innerHTML = some_html;
return d.firstChild;
jQuery.parseHTML()-函数可能会对您有所帮助

尝试下面的代码

    var myname = 'John Doe';

//This is using Jquery
var htmltext = '<p style="color:red">'+myname+'This is a test</p>'
$('#one').html(htmltext);


//This is pure javascript
document.getElementById('two').innerHTML='<p style="color:red">'+myname+'This is a test</p>';
var myname='John Doe';
//这是在使用Jquery
var htmltext='

'+myname+'这是一个测试

' $('#one').html(htmltext); //这是纯javascript document.getElementById('two').innerHTML='

'+myname+'这是一个测试;


我正在构建一个字符串,并使用html()而不是text()函数将其附加到html元素。浏览器会将其视为HTML标记,并显示UI中的更改,如fiddle中所示。

var d=document.createElement('div');d、 innerHTML=一些html?尝试此信息
https://developer.mozilla.org/en-US/docs/Code_snippets/HTML_to_DOM
@pure_code.com:减少代码行并不总是最好的方法。仅仅因为可能有一个单行程序解决方案,并不意味着它是最好的实现。@pure_code.com:但是没有。如果愿意,可以将这三行放入函数中(编辑:实际上必须这样做,因为最后一行是
return
语句)。如果您不知道如何定义函数:。那么只需将其粘贴到名为“some_function”的函数体中,并将其命名为。@pure_code.com这里有一个单行程序:
var d=document.createElement('div');d、 innerHTML=一些html;返回d.第一个孩子
@pure_code.com然后将其包装在函数中。。。只是一个更详细的版本。希望这个答案能帮助您:@DonnyDee该答案只适用于XML有效的HTML(即并非所有HTML)。不要忘记为那些可能不熟悉
jQuery
JavaScript
的人添加代码说明。jQuery代码非常完美。非常感谢。
    var myname = 'John Doe';

//This is using Jquery
var htmltext = '<p style="color:red">'+myname+'This is a test</p>'
$('#one').html(htmltext);


//This is pure javascript
document.getElementById('two').innerHTML='<p style="color:red">'+myname+'This is a test</p>';