1

div (任意の 'resultsMainContainer' div) をクリックすると、その特定の div 内のクラス 'result' を持つ div id を取得する必要があります。

<div class="resultsMainContainer">
 <div id="48" class="sbsCard panel  result">
   abcd
 </div>
</div>

<div class="resultsMainContainer">
 <div id="49" class="someCard result">
  aabb
 </div>
</div>

<div class="resultsMainContainer">
 <div id="50" class="sbsCard panel3 result">
   nnaaa
 </div>
</div>

<div class="resultsMainContainer">
 <div id="33" class="sbsCard panel  result">
   abcddd
 </div>
</div>

私はこれを試しました:

$('body').on('click', '.resultsMainContainer', function() {
         alert($(this).next(".result").attr("id"));
});

しかし、それは機能していないようです。他のアイデア/オプションはありますか?
または、私は間違いを犯しました:)?

4

3 に答える 3

2

代わりに.children ()または.find( )を使用 してください.next()

$('body').on('click', '.resultsMainContainer', function() {
     alert($(this).children(".result").attr("id"));
});

.attr() の代わりに .prop() を使用する

alert($(this).children(".result").prop("id"));

.prop() と .attr()を読む

于 2013-10-17T10:42:16.400 に答える
1

.result は「resultsMainContainer」の隣ではなく内部にあるため、次の代わりに検索を使用します。

$('body').on('click', '.resultsMainContainer', function() {
  alert($(this).find(".result").attr("id"));
});
于 2013-10-17T10:56:01.593 に答える
1

jQuery .find()を使用し、次のように変更します。

alert($(this).find(".result").attr("id"));
于 2013-10-17T10:42:30.850 に答える