Mam taką listę rozwijaną:
<select id="box1">
<option value="98">dog</option>
<option value="7122">cat</option>
<option value="142">bird</option>
</select>
Jak uzyskać rzeczywisty tekst opcji zamiast wartości za pomocą JavaScript? Mogę uzyskać wartość za pomocą czegoś takiego:
<select id="box1" onChange="myNewFunction(this.selectedIndex);" >
Ale raczej niż 7122
chcę cat
.
javascript
html
dom
drop-down-menu
techtheatre
źródło
źródło
Odpowiedzi:
Wypróbuj opcje
źródło
Zwykły JavaScript
jQuery:
źródło
.textContent
i.innerText
do.text()
działania metod? To nie jest zgodne ze standardami, jest całkowicie błędne, ponieważ nie używa.text
. Gdzie są głosy przeciw?innerHTML
,innerText
jest jeszcze gorzej.Wszystkie te funkcje i przypadkowe rzeczy, myślę, że najlepiej jest to wykorzystać i zrobić to w ten sposób:
źródło
HTML:
JavaScript:
DEMO: http://jsfiddle.net/6dkun/1/
źródło
Posługiwać się -
Oto skrzypce - http://jsfiddle.net/eEGr3/
źródło
Musisz uzyskać wewnętrzny kod HTML opcji, a nie jej wartość.Użyj
this.innerHTML
zamiastthis.selectedIndex
.Edycja: Najpierw musisz pobrać element opcji, a następnie użyć innerHTML.Użyj
this.text
zamiastthis.selectedIndex
.źródło
innerHTML
od<select>
elementu.Ale :
A także to:
źródło
O ile wiem, są dwa rozwiązania.
1 wybrane opcje
2 opcje
źródło
Wypróbuj poniższe:
Zobacz tutaj próbkę jsfiddle
źródło
innerHTML
jest jednak bardzo wygodny ... Jestem gotów poświęcić w tym celu wszystkie standardy i prostotę. : P