确定Jquery选择器的对象类型

时间:2010-09-03 10:43:49

标签: jquery

我有一个列表框(有时)也使用OptionGroups,这意味着如果我在列表框中选择某个OPTION的父级,如下所示:

var optionGroup = $(this.options(index)).parent();

它既可以是OptionGroup(如果使用的话),也可以是Select元素本身。

有没有一种简单的方法可以确定我在这里处理哪种对象?

4 个答案:

答案 0 :(得分:1)

您要查找的信息是DOM元素的tagName属性。你会从像这样的jQuery元素中得到这个:

$("#element")[0].tagName

在比较之前,建议在物业上进行.toLowerCase()

答案 1 :(得分:1)

我认为它可以与

一起使用
if($(this.options(index)).parent().is('select'))
{
    //your code here
}

答案 2 :(得分:1)

您可以使用.parent('optgroup')。这将过滤掉任何不是选项组的内容。然后你必须检查你是否得到了结果。

答案 3 :(得分:1)

如果您真的想要这个,以确定是否需要另一个.parent()来获取<select>,那么就有一个方法,.closest(),就像这样:

$(this.options(index)).closest('select');