jQueryを使用して<span>の値を取得するにはどうすればよいですか?


149

これが基本です。

上記のスパンの値「これは私の名前です」を取得するにはどうすればよいですか?

<div id='item1'>
<span>This is my name</span>
</div>

回答:


299

これは簡単な例だと思います:

$('#item1 span').text();

または

$('#item1 span').html();

1
これらのjQuery関数はどこにありますか?
フェリペ

25
これら2つの関数を表示するとき、新しいコーダーが同じことをするように提案することで混乱させないことが重要だと思います(この例では同じように表示されます)。は.text()検出した文字をHTMLエンコードしますが、文字はエンコードしないことに注意してください.html()
VoidKing 2013年

これは、同じクラスの複数のスパンで実現できますか?
マシューウッダード14年

IEで動作するようにtspanを見つけようとして、これに遭遇しました。.html()ではなく、tspanで.text()を使用する必要があることがわかりました。理由は不明ですが、誰にとってもそうではないかもしれませんが、.text()を使用したときにIEで修正されました。
Kalel Wade

@MatthewWoodard $('.class').each(function() { $(this).html() });; $('.class').html()最初の要素の.html()値が返されるため
tomsihap


7

id = "item1"を読み取ることを意図していると仮定すると、

$('#item1 span').text()


5

'item'値の属性を指定しなかったため、クラスが使用されていると想定しています。

<div class='item1'>
  <span>This is my name</span>
</div>

alert($(".item span").text());

DOMが読み込まれてコードを使用するのを待ってください。jQueryでは、ready()そのための関数を使用します。

<html>
 <head>
  <title>jQuery test</title>
  <!-- script that inserts jquery goes here -->
  <script type='text/javascript'>
    $(document).ready(function() { alert($(".item span").text()); });
  </script>
</head>
<body>
 <div class='item1'>
   <span>This is my name</span>
 </div>
</body>


1
あなたは質問を変更しました!あなたの答えはあなたの質問に正解です、彼はクラス名ではなくidを指定していました
ルイス

まあ、彼の名前の下の最初のコメントを見ると、彼が属性をまったく書いていないことに気づくでしょう、それは<div 'item1'>でした、私は明らかに間違っていると思いました。
フランシスコアキノ

2

JavaScriptでは使用しないのですdocument.getElementById('item1').innertextか?





0

非常に重要.text()と.html()の違いに関する追加情報:

セレクタが複数のアイテムを選択する場合、たとえば、2つのスパンがある <span class="foo">bar1</span> <span class="foo">bar2</span> 場合、

その後

$('.foo').text();2つのテキストを追加してそれを与える; 一方

$('.foo').html(); それらの1つだけを与えます。


0

あなたはあなたのHTMLで直接スパンでIDを使用することができます。

<span id="span_id">Client</span>

それからあなたのjQueryコードは

$("#span_id").text();

誰かがエラーをチェックするのを手伝い、text()の代わりにval()を使用していることを発見しました。スパンでval()関数を使用することはできません。そう

$("#span_id").val();

nullを返します。


-2
<script>
    $(document).ready(function () {

            $.each($(".classBalence").find("span"), function () {
            if ($(this).text() >1) {
                $(this).css("color", "green")

            }
            if ($(this).text() < 1) {
                $(this).css("color", "red")
                $(this).css("font-weight", "bold")
            }
        });

    });
    </script>
弊社のサイトを使用することにより、あなたは弊社のクッキーポリシーおよびプライバシーポリシーを読み、理解したものとみなされます。
Licensed under cc by-sa 3.0 with attribution required.