Questo è di base.
Come ottengo il valore "Questo è il mio nome" dell'intervallo sopra indicato?
<div id='item1'>
<span>This is my name</span>
</div>
Questo è di base.
Come ottengo il valore "Questo è il mio nome" dell'intervallo sopra indicato?
<div id='item1'>
<span>This is my name</span>
</div>
Risposte:
Penso che questo dovrebbe essere un semplice esempio:
$('#item1 span').text();
o
$('#item1 span').html();
.text()
HTML codificherà tutti i caratteri che trova, mentre .html()
non codificherà alcun carattere.
$('.class').each(function() { $(this).html() });
; perché $('.class').html()
restituirà il valore .html () per il primo elemento
$('#item1').text(); or $('#item1').html();
funziona bene per id="item1"
Dato che non hai fornito un attributo per il valore "item", presumo che venga utilizzata una classe:
<div class='item1'>
<span>This is my name</span>
</div>
alert($(".item span").text());
Assicurati di attendere il caricamento del DOM per utilizzare il tuo codice, in jQuery usi la ready()
funzione per questo:
<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>
$('#item1 span').html();
Funziona con il mio codice
MOLTO IMPORTANTE Ulteriori informazioni sulla differenza tra .text () e .html ():
Se il selettore seleziona più di un elemento, ad esempio hai due campate in questo modo
<span class="foo">bar1</span>
<span class="foo">bar2</span>
,
poi
$('.foo').text();
accoda i due testi e te lo dà; mentre
$('.foo').html();
ti dà solo uno di quelli.
Puoi usare id in span direttamente nel tuo html.
<span id="span_id">Client</span>
Quindi il tuo codice jQuery sarebbe
$("#span_id").text();
Qualcuno mi ha aiutato a controllare gli errori e ha scoperto che ha usato val () invece di text (), non è possibile usare la funzione val () in span. Così
$("#span_id").val();
restituirà null.