使用for循环或$ .each分别检索div中的值

时间:2013-03-21 20:24:57

标签: jquery html

<div class="head-text">
    <div class="body-text">
        <div class="line1">
            This is line one1
        </div>
        <div class="line2">
            This is line one1
        </div>
    </div>

    <div class="body-text">
        <div class="line1">
            This is line one2
        </div>
        <div class="line2">
            This is line one2
        </div>
    </div>

    <div class="body-text">
        <div class="line1">
            This is line one3
        </div>
        <div class="line2">
            This is line one3
        </div>
    </div>
</div>

问题是我想单独检索文本。我尝试过使用循环,但我要么全部还是第一件事。

例如:如果我需要在循环中检索文本“This is line one2”,那我该怎么做呢?

3 个答案:

答案 0 :(得分:0)

$('body-text').each(function() {
    $(this).children('div').each(function() {
        myText = $(this).text();
    }
}

更新:根据您的评论,听起来根本不需要循环。您可能只想要,例如:

$('.body-text:nth-child(3)').children('.line2').text();

答案 1 :(得分:0)

使用

$("div[class^=line]").each(function(){
    alert($(this).text());
});

如果你需要所有这些数组:

var arr = $("div[class^=line]").map(function(){
            return $(this).text();
          }).get();

如果您需要点击提醒:http://jsfiddle.net/mzZR8/

$("div[class^=line]").click(function(){
   alert($(this).text());
});

答案 2 :(得分:0)

试试这个!

$(".body-text").click(function(evt){
   alert($(evt.target).text());
});

“evt”参数允许您访问直接点击的“目标”。

继承人fiddle