在span标记内获取所选选项值

时间:2014-11-19 15:53:32

标签: javascript html

我需要获取所选的选项值,该值位于span标记内。

<span id ="resolutionSpan">

    <select name="resolution" id="resolution">
    <option value="0" selected >0</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>     
    </select>

</span>

我试过了

var e = document.getElementById("resolution");
console.log( e.options[e.selectedIndex].text);

但是返回一个空值。我是否需要首先迭代跨度?

由于项目限制,我不能使用jquery。需要你在javascript中的评论

3 个答案:

答案 0 :(得分:1)

获取.options,然后.selectedIndex,然后.text。像这样:

&#13;
&#13;
var selected = document.getElementById('resolution').options[document.getElementById('resolution').selectedIndex].text

alert(selected);
&#13;
<span id ="resolutionSpan">

    <select name="resolution" id="resolution">
    <option value="0" selected >0</option>
    <option value="1">1</option>
    <option value="2">2</option>
    <option value="3">3</option>     
    </select>

</span>
&#13;
&#13;
&#13;

希望这有帮助!

答案 1 :(得分:1)

我相信.text会选择标签。

如果您想要所选项目的值,请使用.value。

小提琴:http://jsfiddle.net/9wxqmLL1/

var e = document.getElementById("resolution");
console.log( e.options[e.selectedIndex].value);

答案 2 :(得分:1)

您的代码实际上非常接近,只需将.text更改为.value:

var e = document.getElementById("resolution");
console.log( e.options[e.selectedIndex].value);

除非你想获得该选项的实际内容(在这种情况下是相同的值,但仍然)

var e = document.getElementById("resolution");
console.log( e.options[e.selectedIndex].innerHTML);