10

可能重复:
jQuery 从下拉列表中获取选定的文本

<select id="id_deals" name="deals" multiple="multiple">
  <option value="1">deal 2</option>
  <option value="2">deal 1</option>
</select>

使用 jquery,我可以像这样获取所选项目的值:

var selected = $(e.target).val();

>> 2

但令人惊讶的是,当我尝试获取实际选择的文本(例如交易 1)时,它给了我两个条目:

var selected_text = $(e.target).text();

>> "\ndeal 2\ndeal 1\n"

为什么会这样,我怎样才能获得所选条目的文本?

4

2 回答 2

7

jQuery "text()" 方法返回所选元素的内部文本。在您的情况下,您正在选择整个 select 标签,因此它会为您提供其中的所有文本(不包括嵌套标签本身)。相反,使用:

$("#yourdropdownid option:selected").text();

参见:Get selected text from a drop-down list (select box) using jQuery

于 2012-07-20T15:41:17.283 回答
0

e.Target 包含选择列表!这就是为什么您在调用text(). 如果你调用val(),你会得到选择列表的值,它是选项之一的值。

于 2012-07-20T15:42:53.160 回答