-1
<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”,那么我应该怎么做?

4

3 回答 3

0

Use

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

And if you need all of them in an array :

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

If you need the alert on click: http://jsfiddle.net/mzZR8/

$("div[class^=line]").click(function(){
   alert($(this).text());
});
于 2013-03-21T20:28:10.670 回答
0

尝试这个!

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

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

这是一个小提琴

于 2013-03-21T20:53:52.200 回答
0
$('body-text').each(function() {
    $(this).children('div').each(function() {
        myText = $(this).text();
    }
}

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

$('.body-text:nth-child(3)').children('.line2').text();
于 2013-03-21T20:27:21.433 回答