Як отримати значення <span> за допомогою jQuery?


Відповіді:


299

Я думаю, що це повинен бути простий приклад:

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

або

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

1
Де я можу знайти ці функції jQuery?
Феліпе Баррейрос

25
Я думаю, що важливо, показуючи ці дві функції, щоб ми не плутали нові кодери, пропонуючи їм зробити те саме, коли вони не роблять (хоча в цьому прикладі це буде так). Важливо зазначити, що .text()html буде кодувати будь-які символи, які він знайде, при .html()цьому не буде кодувати жодних символів.
VoidKing

Чи можна це досягти за допомогою декількох прольотів з одним класом?
Меттью Вудард

Я наткнувся на це, намагаючись з’ясувати tspan для роботи з IE. Я виявив, що вам потрібно використовувати .text () з tspan, а не .html (). Не впевнені, чому це може бути не у всіх, але це було виправлено в IE, коли я використовував .text ().
Калель Вейд

@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
ви змінили питання! Ваша відповідь підходить для вашого запитання, він вказував ідентифікатор, а не назву класу
Льюїс

добре, якщо ви побачите перший коментар під його іменем, ви помітите, що він взагалі не написав атрибут, це було <div 'item1'>, я, мабуть, помилився.
Франциско Акіно





0

ДУЖЕ ВАЖЛИВО Додаткова інформація про різницю між .text () та .html ():

Якщо ваш селектор обрав кілька елементів, наприклад, у вас є два проміжки <span class="foo">bar1</span> <span class="foo">bar2</span> ,

тоді

$('.foo').text();додає два тексти і дає вам це; тоді як

$('.foo').html(); дає вам лише одне з таких.


0

Ви можете використовувати id in span безпосередньо у своєму HTML.

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

Тоді ваш код jQuery був би

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

Хтось допоміг мені перевірити помилки і виявив, що він використовує val () замість тексту (), не можна використовувати функцію val () в інтервалі. Так

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

поверне нуль.


-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>
Використовуючи наш веб-сайт, ви визнаєте, що прочитали та зрозуміли наші Політику щодо файлів cookie та Політику конфіденційності.
Licensed under cc by-sa 3.0 with attribution required.