0

次のようなリストがあります。

<ul>
  <li class="service-well">
    <div class="service-header"><h1>Service Name</h1></div>
    ... lost of children, and children of children in here.
    <ul class="comments">
      <li class="comment-holder">
          ....This is a comment
      </li>
    </ul>
  </li>
 </ul>

基本的に、これはサービスであり、人々はそれにコメントを投稿できます。誰かがコメントを投稿すると、コメントはデータベースに送信され、挿入後に ajax を介して取得され、次の場所に追加されます。

<ul class="comments">

私の ajax の成功では、そのコメントの親を登って、関連するサービスの名前を取得したいと考えています。

success: function(data) {
  var serviceTitle = $(data).closest('.service-well').find('.service-header').find('h1').text();
  console.log(serviceTitle);
}

データが返された後に Chrome でコンソールを使用すると、これは機能しますが、何らかの理由で、ログに記録されたサービス タイトルのコンソールを見ても何も得られません。返されるデータは次のとおりです。

<li class="comment-holder">stuff here</li>

ただし、返されるliデータ内からセレクターを簡単にフィルタリングして見つけることができますが、それ以外の親にはアクセスできないようです。

どんな助けでも大歓迎です。どうもありがとう!

4

3 に答える 3

1

commentsこれを試すために追加した後:

var serviceTitle = $('.comments .service-well:last .service-header h1').text();

更新しました:

var serviceTitle = $(data).find('.service-well:first .service-header h1').text();
于 2013-07-18T19:41:14.710 に答える