JavaScript的 – 如何获得所选项目的选择控件的文本?

前端之家收集整理的这篇文章主要介绍了JavaScript的 – 如何获得所选项目的选择控件的文本?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
<select name="DropList" id="serverDropList"> 
  <option selected="selected" value="2">server1:3000</option> 
  <option value="5">server3:3000</option> 
 </select>

我知道在原型中,我可以通过$(‘serverDropList’)获取值,但是如何获得“server1:3000”?

解决方法

我不认为Prototype有任何快捷方式为你做,所以:
var Box = $('serverDropList');
var text = Box.selectedIndex >= 0 ? Box.options[Box.selectedIndex].innerHTML : undefined;

…给你所选选项的innerHTML,或者如果没有,则为undefined.

如果您愿意,您可以使用Element#addMethods定义一次,并在所有选择框上可用:

Element.addMethods("SELECT",(function() {
    function getSelectedOptionHTML(element) {
        if (!(element = $(element))) return;
        var index = element.selectedIndex;
        return index >= 0 ? element.options[index].innerHTML : undefined;
    }

    return {
        getSelectedOptionHTML: getSelectedOptionHTML
    };
})());

用法

var text = $('serverDropList').getSelectedOptionHTML();

定义时,我使用了一个命名函数.如果你没有打扰命名功能(我是always use them),你可以使它更简单一些:

Element.addMethods("SELECT",{
    getSelectedOptionHTML: function(element) {
        if (!(element = $(element))) return;
        var index = element.selectedIndex;
        return index >= 0 ? element.options[index].innerHTML : undefined;
    }
);

猜你在找的JavaScript相关文章