下拉菜单:onChange,找到选项值的选择ID

时间:2014-01-16 19:20:27

标签: javascript jquery

举例来说,我有以下结构:

<select id = 'omg' onchange= 'select(this.value)'>
    <option>'wow'</option>
    <option>'pls'</option>
    <option>'werk'</option>
</select>

选择一个选项后,无论它看起来如何,选择功能都会输出选项的选定值,即'哇','请','werk'。

我目前无法尝试选择下拉菜单的ID。我想要的结果的一个例子是选择3个选项中的任何一个,然后让onchange函数输出为'omg'。


我目前的想法是

onchange = 'select(this.value, this)'

其中onchange函数本身看起来像这样:

function select(value, element) {
    var ele = element ; //part where I'm stuck on (I select entire object, but now what?)
    //code for what I want to do with value but that's irrelevant to question
}

2 个答案:

答案 0 :(得分:2)

试试这个?

<select id = "omg" onchange="select(this.value)">
<option value="0">'wow'</option>
<option value="1">'pls'</option>
<option value="2">'werk'</option>
</select>

EDITED:基于注释 - 这是可选方法,因为在未声明值属性的情况下有一种获取文本的默认方法。

答案 1 :(得分:1)

如果你使用的是jquery,你也可以这样做:

根据上面的评论:“我希望select输出整个的”select id“。不是特定选项的ID,因为它们显然不存在。

   $(document).on('ready',function(){
      $("#omg").on('change',function(e){ console.log($(this).attr('id'), " returns = ", $(this).val() );  });     
    });