javascript - .each 槽 html 里面的变量

标签 javascript jquery html

我只是问当我的 html 位于 java-script 变量而不是 DOM 本身时如何使用 .each。

如果我有这样的 html:

<html>
    <h1>deze</h1>
    <h1>this</h1>
    <h1>dies</h1>
</html>

我能做到:

$('h1').each(function(){
    var test = $(this).html();
    alert(test);                
});

它只会发出 3 次警报,告诉 deze,这个,死了。 现在我想做同样的事情,但是然后在变量中使用 html。不知道这是我的伪代码:

var html = '
           <h1>deze</h1>
           <h1>this</h1>
           <h1>dies</h1>
           ';

$(html).each('h1', function(){
    var test = $(this).html();
    alert(test);                
});

不知道该怎么做,我不知道。请赐教!

最佳答案

首先尝试将您的 sting 解析为一些 DOM 节点: http://api.jquery.com/jQuery.parseHTML/

var html = '<div>\
           <h1>deze</h1>\
           <h1>this</h1>\
           <h1>dies</h1>\
           </div>';
var test = $.parseHTML(html);

$('h1',test).each(function(){
    var test = $(this).html();
    alert(test);                
});

这里的例子: http://jsfiddle.net/cnWqQ/3/

此外,在您的问题中,我注意到您的 html 变量不会按照在多行中键入的方式解析为变量。

使用此方法时需要注意的一件事是,如果您要搜索的元素位于顶级,则该方法将不起作用。为避免这种情况,只需将您的字符串包装在一个 div 中。有关这方面的更多信息,请参见此处:http://fredwu.me/post/554746690/jquery-tip-traverse-parse-html-string

关于javascript - .each 槽 html 里面的变量,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15137531/

相关文章:

JavaScript 对象字面量语法错误

jquery - jQuery UI Accordion 的问题

javascript - 如何使用带有自定义标题和内容 div 的 jQueryUI Accordion ?

jquery - jQuery UI 自动完成的自定义搜索功能

javascript - 使用 javascript 和 HTML 的动态树结构

html - 没有 Ecto 的 EEX 模板中的寻呼机 - Elixir 和 Phoenix

html - 如何在 CSS 中获得文本背后的坚实背景?

javascript - 无法显示之后添加的元素

javascript - 使用(JS 和 Html 和 Css)显示数据库数据

javascript - 需要更好的 JSON 模式来验证稀疏矩阵数据对象