To jest podstawowe.
Jak uzyskać wartość „To jest moje imię” z powyższego zakresu?
<div id='item1'>
<span>This is my name</span>
</div>
javascript
jquery
html
Felipe Barreiros
źródło
źródło
.text()
html zakoduje wszystkie znalezione znaki, a.html()
nie zakoduje żadnych znaków.$('.class').each(function() { $(this).html() });
; ponieważ$('.class').html()
zwróci wartość .html () dla pierwszego elementuźródło
Zakładając, że zamierzałeś odczytać id = "item1", potrzebujesz
źródło
$('#item1').text(); or $('#item1').html();
działa dobrze dlaid="item1"
źródło
Ponieważ nie podałeś atrybutu dla wartości „item”, zakładam, że używana jest klasa:
Upewnij się, że zaczekasz na załadowanie DOM, aby użyć twojego kodu, w jQuery używasz do tego
ready()
funkcji:źródło
W javascript nie użyłbyś
document.getElementById('item1').innertext
?źródło
źródło
$('#id span').text()
jest odpowiedzią!źródło
$('#item1 span').html();
Działa z moim kodemźródło
BARDZO WAŻNE Dodatkowe informacje o różnicy między .text () i .html ():
Jeśli twój selektor wybiera więcej niż jeden element, np. Masz dwa takie zakresy
<span class="foo">bar1</span>
<span class="foo">bar2</span>
,następnie
$('.foo').text();
dołącza oba teksty i daje ci to; natomiast$('.foo').html();
daje tylko jedną z nich.źródło
Możesz użyć id in span bezpośrednio w swoim html.
Wtedy twój kod jQuery byłby
Ktoś pomógł mi sprawdzić błędy i stwierdził, że użył val () zamiast text (), nie jest możliwe użycie funkcji val () w span. Więc
zwróci wartość null.
źródło
źródło