2012-04-10 85 views
2
<select id="kamal"> 
<option value"ACTIVE">a<option> 
<option value"DISABLED">b<option> 
<option value"DELETED">c<option> 
</select> 

的价值我想在page..not显示的值在选项标签获取显示选择标签

我感兴趣的显示值“活跃”而不是“ACTIVE”

当我写document.getElementById("kamal").value;那么选择的值来自变量。但我想要显示的值。

请帮我解释一下这个值。

注意:通过使用下面给出的所有选项,它会给我所选选项的值,我希望所选选项的标签。我的意思是在html页面上显示的值。

回答

5

关闭你正在寻找解决的办法是:

来获取值:

var element = document.getElementById("kamal"); 
var selectedValue = element.options[element.selectedIndex].value; 

来获取文本:在

工作示例:

http://jsfiddle.net/n85tW/6/

+0

OP想要的是文本,而不是值。 – RobG 2012-04-10 09:14:42

3

尝试:

var sel = document.getElementById("kamal") 
alert(sel.options[sel.selectedIndex].value); 

Working example here

注意:您<option>标签应与</option>

+0

这将给我所选择的选项的值,我想选择选项的标签。我的意思是在html页面上显示的值。 – 2012-04-10 08:44:24

+0

@SAM你看过我添加的例子吗?这给你显示的文本..例如“gesperrt”不是“DISABLED” – ManseUK 2012-04-10 08:45:04

+0

@RobG你使用什么浏览器?因为Firefox/Chrome和IE都返回文本显示不是值....试试我在我的回答中链接的例子 – ManseUK 2012-04-10 09:19:33

0

VAR元素=的document.getElementById( “哈拉”

var element = document.getElementById("kamal"); 
var selectedValue = element.options[element.selectedIndex].text; 

编辑); var selectedValue = element.options [element.selectedIndex]。 innerHTML;

这是我的问题的解决方案。