2011-11-03 18 views
5

Należy rozważyć pole wyboru html z identyfikatorem "MySelect".Właściwość .value obiektu HTMLSelectElement jest niezawodna

Czy to jest bezpieczne, aby uzyskać wartość wybranej opcji jak ten:

document.getElementById("MySelect").value; 

zamiast tego:

var Sel = document.getElementById("MySelect"); 
var MyVal = Sel.option[MyVal.selectedIndex].value; 

wydaje się być bezpieczne, ale nigdy nie widziałem na nim dokumentacji .

Odpowiedz

2

To nie była szeroko wspierana ze starymi przeglądarkami

Jeśli chcesz być bezpieczny można użyć selectedIndex z option jak stwierdził w swoim pytaniu.

Możesz być pewien, że uzyskasz wartość od dołu, jeśli się martwisz.

document.nform.nselect.options[document.nform.nselect .selectedIndex].value

1

Dawno temu nie było to bezpieczne dla różnych przeglądarek. Ale w dzisiejszych czasach nie wiem.

Czy używanie jQuery jest opcją? Ponieważ:

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

jest całkowicie bezpieczny dla różnych przeglądarek.

+0

Ale te dni, nie wiem, haha ​​ – david

+0

„To nie była szeroko wspierana ze starymi przeglądarkami” jest o wiele lepiej. A teraz? ; o) – Rodolphe

+0

W rzeczywistości używam JQuery, ale jest wewnątrz każdego wywołania zwrotnego i wydaje się znacznie bardziej wydajne, aby po prostu powiedzieć this.value zamiast owijać go w całkowicie nowy obiekt Jquery. –

Powiązane problemy