首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >在选择更改时,获取数据属性值

在选择更改时,获取数据属性值
EN

Stack Overflow用户
提问于 2011-12-02 01:31:24
回答 9查看 370.5K关注 0票数 310

下面的代码返回'undefined'...

$('select').change(function(){
    alert($(this).data('id'));
});

<select>
    <option data-id="1">one</option>
    <option data-id="2">two</option>
    <option data-id="3">three</option>
</select>
EN

回答 9

Stack Overflow用户

回答已采纳

发布于 2011-12-02 01:32:17

您需要找到所选的选项:

$(this).find(':selected').data('id')

$(this).find(':selected').attr('data-id')

虽然第一种方法是首选的。

票数 746
EN

Stack Overflow用户

发布于 2011-12-02 01:35:14

尝试以下操作:

$('select').change(function(){
  alert($(this).children('option:selected').data('id'));
});

change订阅服务器订阅select的更改事件,因此this参数是select元素。您需要找到要从中获取data-id的所选子对象。

票数 42
EN

Stack Overflow用户

发布于 2017-01-30 23:17:44

document.querySelector('select').onchange = function(){   
   alert(this.selectedOptions[0].getAttribute('data-attr')); 
};
票数 15
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/8345666

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档