如何获取所选项目';JavaScript中的文本?
如何在JavaScript中获取所选项目的值和文本 这是我的组合框:如何获取所选项目';JavaScript中的文本?,javascript,Javascript,如何在JavaScript中获取所选项目的值和文本 这是我的组合框: <select size="1" id="fTerminalType" name="fTerminalType"> <option value="AP">Airport</option> <option value="PT">Port</option> <option value="BS">Bus</option>
<select size="1" id="fTerminalType" name="fTerminalType">
<option value="AP">Airport</option>
<option value="PT">Port</option>
<option value="BS">Bus</option>
<option value="TR">Train</option>
</select>
这里我可以得到combobox的值。但是如何获取所选值的文本?例如,如果值是“BS”
,我需要文本“Bus”
上述解释如下:
- 使用传递的ID字符串获取对select的引用
- 获取selectedIndex并将其存储在变量中
- 使用selectedIndex获取所选选项的文本属性
var terminal = document.getElementById("fTerminalType");
var selectedText = terminal.options[terminal.selectedIndex].text;
那应该可以了。试试这个,它很管用
<select id="po" onchange="myFunction()">
<option value='1'>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
<select id="po1" onchange="myFunction()">
<option value='1'>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
<p id="demo">text1</p>
<p id="demo2">text2</p>
<script>
function myFunction()
{
var x = document.getElementById("po").options[po.selectedIndex].innerHTML;
document.getElementById("demo").innerHTML="You selected 1: " + x;
var x1 = document.getElementById("po1").options[po1.selectedIndex].innerHTML;
document.getElementById("demo2").innerHTML="You selected 2: " + x1;
}
</script>
苹果
橙色
菠萝
香蕉
苹果
橙色
菠萝
香蕉
text1
text2
函数myFunction()
{
var x=document.getElementById(“po”).options[po.selectedIndex].innerHTML;
document.getElementById(“demo”).innerHTML=“您选择了1:+x;
var x1=document.getElementById(“po1”).options[po1.selectedIndex].innerHTML;
document.getElementById(“demo2”).innerHTML=“您选择了2:”+x1;
}
不知道为什么有人给你-1,可能是因为你没有正确清理变量名。不过,对于正确答案的要求似乎有点苛刻。当问题第一次发布时,他将.value作为第2行中的字符串。从那时起,他将其更改为.text.+1以正确使用option元素的text属性:@Alex:“它不工作”不会帮助任何人帮助你。什么不起作用?它以什么方式失败?你是如何测试它的?它在所有浏览器上都失败了吗?或者只是在一些浏览器上失败了?@Alex:看起来你可能已经测试过它了,它说的是“.value”而不是“.text”-如果你尝试编辑过的版本,它应该可以工作。它在IE 6、FF 3.5和Chrome 3:-)上对我起了作用,它获得了所有
元素的html!
var t = document.getElementById("fTerminalType");
var selectedText = t.options[t.selectedIndex].text;
var TerminalType = document.getElementById("fTerminalType").innerHTML;
var terminal = document.getElementById("fTerminalType");
var selectedText = terminal.options[terminal.selectedIndex].text;
<select id="po" onchange="myFunction()">
<option value='1'>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
<select id="po1" onchange="myFunction()">
<option value='1'>Apple</option>
<option>Orange</option>
<option>Pineapple</option>
<option>Banana</option>
</select>
<p id="demo">text1</p>
<p id="demo2">text2</p>
<script>
function myFunction()
{
var x = document.getElementById("po").options[po.selectedIndex].innerHTML;
document.getElementById("demo").innerHTML="You selected 1: " + x;
var x1 = document.getElementById("po1").options[po1.selectedIndex].innerHTML;
document.getElementById("demo2").innerHTML="You selected 2: " + x1;
}
</script>