Получить значение текста внутри диапазона - PullRequest
0 голосов
/ 01 мая 2011

Я работаю с плагином Flexigrid с JQuery. Итак, у меня есть div с двумя элементами span, они будут содержать текст / отображаемый текст для кнопок, которые предоставляет flexigrid. Проблема в том, что нет механизма добавления идентификаторов к этим кнопкам, кроме добавления другого текста.

<div class="tdiv2>  
    <div class="fbutton">
        <div>
            <span class="view" style="padding-left: 20px;">Add</span>
        </div>
    </div>
    <div class="fbutton">
        <div>
            <span class="view" style="padding-left: 20px;">Delete</span>
        </div>
    </div>
</div>  

Так расположены кнопки. Таким образом, нажав на эту кнопку, я получаю текст внутри диапазона, как «Добавить» и «Удалить». Теперь я хочу добавить тег класса к этому диапазону, чтобы различать активную кнопку и другую.

Так что мне пришла в голову мысль, что если бы я мог получить span-текст, который соответствует возвращаемому тексту, я мог бы добавить класс к этому span.

Но когда я делаю

alert($('.tDiv2 span').html()); 

Я получаю только текст первого промежутка, а не второй. Может ли кто-нибудь помочь мне с получением html обоих пролетов, а не только первого.

Ответы [ 3 ]

3 голосов
/ 01 мая 2011

Попробуйте это>

$('.tDiv2 span').each(function(index, el) { alert($(el).html()); });
0 голосов
/ 01 мая 2011

Вам нужно каждый .

$('.tDiv2 span')each(function(node){ alert(node.html()); });

Однако я хотел бы отметить, что такой подход может вызвать проблемы с доступностью для пользователей программ чтения с экрана. Если вам по какой-то причине необходимо заново изобретать кнопки, используйте атрибуты ARIA , чтобы у ваших слепых посетителей была надежда заставить их работать правильно.

0 голосов
/ 01 мая 2011

jQuery автоматически выбирает первый элемент в серии, если вы пытаетесь получить из него свойство, такое как html или текст.чтобы получить второе (или любое число), попробуйте:

alert($('.tDiv2 span').eq(1).html()); //returns 2nd element's html content

Вы можете заменить любой индекс на основе 0 на 1.

...