2011-06-01 95 views
9

我知道如何使用jquery获取元素的属性。但我不确定如何使用选择字段中的实际选项来执行此操作。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函数,并帮助我处理其他一些事情。

回答

16

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

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

也就是说,找到#test后代元素是(A)的选项元素和(b)is selected

如果你们已经包含#test一个选择,你可以用find做到这一点:

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

大非常感谢 – 2014-10-01 06:05:01

0

这难道不是工作?如果你使用的onchange

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

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

}); 
1

,您可以使用下面这样的:

$("#test").change(function(){ 
    var title = $(this).find('option:selected').attr('title'); 
});