2017-01-25 2 views
1

あるクラスに続く同じクラスの入れ子要素の値を取得しようとしています。特定のクラスに続く同じクラスのすべての要素の値を取得します。

したがって、次のJQueryで 'A'、 'C​​'を取得します。

var values = $('.selected > .hello').map(function() { return $(this).val(); }).get(); 

私はちょうど$( '。hello')を使うと 'A'、 'B'、 'C​​'を得ることができます。

私はここで何が欠けていますか?

答えて

2

あなたのロジックはほぼ正しいです。問題は、val()を使用していますが、aの要素にはvalueというプロパティがないためです。代わりにtext()を使用してください:

var values = $('.selected > .hello').map(function() { 
 
    return $(this).text(); 
 
}).get(); 
 

 
console.log(values);
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<ul> 
 
    <li class="selected"> 
 
    <a class="hello">A</a> 
 
    </li> 
 
    <li> 
 
    <a class="hello">B</a> 
 
    </li> 
 
    <li class="selected"> 
 
    <a class="hello">C</a> 
 
    </li> 
 
</ul>

+0

感謝を除外されます何のクラスを持っていないので。はい、そうです。解決済み。 – Gene9y

0

var values = $('li.selected > .hello').map(function() { 
 
    return $(this).text(); 
 
}).get(); 
 

 
console.log(values)
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script> 
 
<li class="selected"> 
 
    <a class="hello">A</a> 
 
</li> 
 
<li> 
 
    <a class="hello">B</a> 
 
</li> 
 
<li class="selected"> 
 
    <a class="hello">C</a> 
 
</li> 
 
So, I want to get 'A', 'C' with the following JQuery.

を使用li.selected二Liが、それは

関連する問題