从下拉列表中的选定元素获取属性?

时间:2016-01-29 15:46:38

标签: javascript jquery html select

如果我有这个HTML代码:

<select id="selectSomething">
    <option id="4" data-name="tomato" data-email="tomato@t.com">Tomato</option>
    <option id="5" data-name="potato" data-email="potato@t.com">Potato</option>
</select>

有人选择了一个选项..

然后我有这个javascript代码:

var $selectedValue = $("#selectSomething option:selected");
var somethingName = $selectedValue("data-name");
var somethingEmail = $selectedValue("data-email");

但由于某种原因,我收到一个错误:&#34;未捕获TypeError:$ selectedValue不是函数&#34;

这里有什么问题,我该如何解决这个问题?

2 个答案:

答案 0 :(得分:2)

$selectedValue是一个jQuery选择器元素。从中获取财产可以通过

完成
var somethingName = $selectedValue.attr('data-name');

但在您的情况下,使用专门为数据属性发明的.data()可能更合适

var somethingName = $selectedValue.data('name');

答案 1 :(得分:0)

  

$了selectedValue

不是一个函数,它是一个包含元素的jQuery对象。

你需要使用

var somethingName = $selectedValue.Data("name");

var somethingEmail = $selectedValue.Data("email");

可以找到更多的例子 https://api.jquery.com/data/