CSS选择器找到指定的标签

我需要一个CSS选择器,选择<select>元素,如果它包含一个<option>包含或等于(都将匹配我的要求)指定的文本。 例如HTML:

<select name="foo"> <option value="1">First</option> <option value="2">Second</option> </select>

我想要<select>是否包含例如标有“二”的选项。 事情是这样的:

select[option:contains('Second')]

如果没有办法实现与CSS选择,我也接受JQuery的或XPath选择。

--------------解决方案-------------

你不能用CSS做。

您可以使用此jQuery选择( :has():contains()不是CSS的一部分):

$("select:has(option:contains('Second'))")

还是这个XPath表达式:

//select[contains(option, 'Second')]

$('select[name="foo"] option:contains("Second")').parent().addClass('selected');

也许这可以帮助

要做到这一点的最简单的方法是使用contains()上的选项选择器

$("select option:contains('Second')")

这里有一个工作示例:http://jsfiddle.net/8Tn4Z/

并与值的版本属性不包括:http://jsfiddle.net/8Tn4Z/1/

要获得实际的选择元素本身,你可以简单地使用parent()方法对上述代码,以便:

var selectElement = $("select option:contains('Second')").parent();

这里有一个例子:http://jsfiddle.net/8Tn4Z/2/

分类:jQuery的 时间:2015-03-15 人气:0
分享到:

相关文章

Copyright (C) 55228885.com, All Rights Reserved.

55228885 版权所有 京ICP备15002868号

processed in 0.479 (s). 10 q(s)