使用 jQuery 查找元素的类型

Posted

技术标签:

【中文标题】使用 jQuery 查找元素的类型【英文标题】:finding the type of an element using jQuery 【发布时间】:2010-10-11 03:21:39 【问题描述】:

在 jQuery 中,如果我有一个元素的引用,我如何确定它是什么类型的元素,例如,输入或下拉列表?有什么办法可以查到吗?

复制:

How can I determine the element type of a matched element in jQuery?

【问题讨论】:

复制:***.com/questions/341900/… 可能是重复的,但它有更好的答案,而另一个被标记得很糟糕。 @Rumpleteaser 如果“另一个”被标记得很糟糕,那你为什么不利用它下面的edit 按钮并完美地标记它呢? 【参考方案1】:

如果元素是输入,以下将返回 true:

$("#elementId").is("input") 

或者您可以使用以下方式获取标签的名称:

$("#elementId").get(0).tagName

【讨论】:

使用 $("#elementId").get(0).tagName 时,tagName 将全部大写 - TR、DIV 等 好的,所以 tagName 属性返回一个全大写的值,我只是在上面做了一个.toLowerCase() var elementType = $(this).prop('tagName'); 使用nodeName 可能在不同浏览器之间更加一致:***.com/questions/4878484/… 请注意,使用$("#elementId").is(":input") 通常会告诉您,如果您正在处理任何类型的表单元素,而不检查其特定类型 (reference)。【参考方案2】:

您可以使用 .prop()tagName 作为您要获取的属性的名称:

$("#elementId").prop('tagName'); 

【讨论】:

【参考方案3】:

值得注意的是,@Marius 的第二个答案可以用作纯 javascript 解决方案。

document.getElementById('elementId').tagName

【讨论】:

以上是关于使用 jQuery 查找元素的类型的主要内容,如果未能解决你的问题,请参考以下文章

使用jquery查找所有input元素写法为?

jQuery使用:DOM操作之查找兄弟元素和父级元素

JavaScript查找数组是否存在指定元素

使用jQuery查找页面上元素ID包含特定文本的所有元素

使用 HTML DOM 在文档中查找元素

如何使用jquery查找元素的第n个父元素