-2

我有几个具有相同类名的 div。但有不同的内容。它们如下所示

  <div class="schoolLib">
         <div class="message">
            <span class="msgTextLib">This is a sample text.</span>
         </div>
  </div>


  <div class="schoolCanteen">
         <div class="message">
            <span class="msgTextcanteen">This is another sample text.</span>
         </div>
  </div>


  <div class="schoolBus">
         <div class="message">
            <span class="msgTextBus">This is a sample text for Bus.</span>
         </div>
  </div>

如何使用 .html() 获取消息类 div 中的所有文本。我的内容是动态的。我有不同的跨度课程。我还需要使用 .html() 为所有 div 设置不同的文本。所以我需要一种方法来迭代地获取类名消息下的所有内容。我知道 .each() 方法,但不知道该怎么做。作为一个初学者,我需要你的帮助。我会很感激你的帮助。

4

3 回答 3

0

您可以使用each来迭代集合:

$('.message').each(function(){
    var msg = $(this);
    msg.html('<div> new content </div>'); //for adding html
    //or to set the text use
    msg.text('change text');
  });
于 2013-03-26T17:01:18.143 回答
0

正如评论指出的那样,使用 .each() 来获取内容。仅供参考发布片段。

    var html = '';
    $('.message').each(function(){
      html += $(this).html(); //get the html
      $(this).html('<span>something else</span>') //set a different html
    });
    console.log(html);
于 2013-03-26T17:02:06.463 回答
0

如果每条消息总是只有一个跨度,请试试这个:

$('.message').each(function(){

alert($(this).children().first().text());

});

我不知道你想对消息内容做什么,但是你可以得到所有这些。如果你愿意,你可以将它们存储在一个数组中并在其他上下文中使用......

于 2013-03-26T17:09:38.970 回答