2016-04-24 13 views
2

私は、このHTMLスニペットを持っている:jQueryのは.text()関数の動作

<div clas="some-div"> 
    <span class="same-class">text 1</span> 
    <span class="same-class">text 2</span> 
</div> 

私は2つの異なる変数にテキスト1テキスト2を抽出したいです。

var allText = $('.same-class').text(); //gives text 1text2 
var t1 = $('.same-class')[0].text(); //gives error 

の.text()関数がどのように振る舞うのか?

答えて

5

あなたがそのインデックスに基づいて要素にアクセスするためのブラケット表記を使用する場合は、そのプレーンnodeオブジェクトを返します

var t1 = $('.same-class').eq(0).text(); 

、この目的のために.eq()を使用する必要があります。そして、そのプロトタイプにはtextという関数は含まれません。

あなたはまだやるそして、ブラケット表記を使用したい場合は、

var t1 = $('.same-class')[0].textContent; 
3

あなたのような、同様$.each()を使用することができます。

2

jQuery docからのテキストの説明()、:

説明:一致する要素のセット内の各要素の組み合わせテキストコンテンツを取得します彼らの子孫を追い詰める。

jQueryオブジェクト$( '。same-class')にはいくつかの要素が含まれているので、すべての要素のテキストを1行にまとめます。特定の要素のテキストの使用を得るために

.eq()

$('.same-class').eq(0).text(); 

方法

関連する問題