2011-11-03 73 views
5

请考虑一个id为“MySelect”的html选择框。HTMLSelectElement的.value属性是否可靠

它是安全的得到这样的选择的选项的值:

document.getElementById("MySelect").value; 

,而不是这样的:

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

这似乎是安全的,但我从来没有见过的文件就可以了。

回答

2

它并没有被广泛用旧的浏览器

如果想要安全,你可以使用selectedIndexoption,你在你的问题表示支持。

如果你担心,你可以肯定你会从下面得到价值。

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

1

很久以前,这不是跨浏览器安全的。但是现在,我不知道。

正在使用jQuery的一个选项? 因为这样:

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

是完全跨浏览器安全的。

+0

但这些天来,我不知道,哈哈 – david

+0

“它并没有被广泛用旧的浏览器支持”要好得多。现在怎么样? ; o) – Rodolphe

+0

我实际上使用JQuery,但它在每个回调中,并且只是说this.value而不是将它包装在一个全新的Jquery对象中似乎更有效率。 –