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

时间:2013-05-29 14:32:35

标签: 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 + '" id="' + val.id + '">' + val.title + '</a>' +
    '<div><div class = "bookmark_menu"></div></div>' +
    '</div>';

可以吗

var some_element = `some_function`(some_html);

是否存在some_function(1)的实现,没有使用库和(2)使用库。

3 个答案:

答案 0 :(得分:41)

为HTML创建一个临时容器,然后获取其内容。类似的东西:

var d = document.createElement('div');
d.innerHTML = some_html;
return d.firstChild;

答案 1 :(得分:5)

尝试以下代码

    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>';

<强> JSfiddle link

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

答案 2 :(得分:4)

jQuery.parseHTML() - 函数可能会帮助你。

http://api.jquery.com/jQuery.parseHTML/