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

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

复制:

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

【问题讨论】:

  • 可能是重复的,但它有更好的答案,而另一个被标记得很糟糕。
  • @Rumpleteaser 如果“另一个”被标记得很糟糕,那你为什么不利用它下面的edit 按钮并完美地标记它呢?

标签: jquery


【解决方案1】:

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

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

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

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

【讨论】:

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

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

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

【讨论】:

    【解决方案3】:

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

    document.getElementById('elementId').tagName
    

    【讨论】:

      猜你喜欢
      • 2013-04-20
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-08-12
      • 2011-07-09
      • 2010-12-20
      • 1970-01-01
      相关资源
      最近更新 更多