jQuery查找选择框选项属性。

9

我知道如何使用jQuery获取元素的属性。但是我不确定如何获取选择字段中实际选项的属性。

<select referenceID="55" name="test" id="test">
  <option value="1">first option</option>
  <option value="2">second option</option>
  <option value="3">third option</option>
</select>

要获取 referenceID,我只需要这样做:
$("#test").attr("referenceID");

当我想要获取值时:

$("#test").val();

但我想让它更有趣一些。我想在每个选项中加入一些具体信息:

<select name="test" id="test">
  <option value="1" title="something here"*>first option</option>
  <option value="2" title="something else here">second option</option>
  <option value="3" title="another thing here">third option</option>
</select>

是否可以在选项标签中获取属性?

我想要一个onselect函数,它可以读取title标签,并帮助我完成其他一些事情。

3个回答

16

假设您想要找到所选选项的title属性...

$('#test option:selected').attr('title');

也就是说,找到#test的后代元素,该元素必须同时满足以下两个条件:(a) 是一个选项元素,(b) 被选中

如果您已经有一个包含#test的选择器,可以使用find实现:

$('#test').find('option:selected').attr('title');

1
如果您正在使用 onchange,您可以像以下方式使用:
$("#test").change(function(){
    var title =  $(this).find('option:selected').attr('title');
});

0

这个不起作用吗?

$("#test").change(function() {

   var title = $(this).attr("title");

});

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接