需要使用Jquery按元素名称获取标签名称[重复]
Posted
技术标签:
【中文标题】需要使用Jquery按元素名称获取标签名称[重复]【英文标题】:Need to get TAG name by element name using Jquery [duplicate] 【发布时间】:2018-07-13 01:29:43 【问题描述】:我有一组 html 元素,并为所有输入/选择/文本区域命名。无论如何,每个元素的名称都是唯一的。
现在我需要按元素名称获取 Html TAG(输入/选择/文本区域)。
对于 EX:
<input type="text" name="sample" />
我需要通过使用元素名称“样本”来获取“输入”标签。
我不想在 jquery 的选择器部分提及 TAG 名称。我只有唯一的名称来查找标签。
请帮忙。
提前致谢!
【问题讨论】:
【参考方案1】:使用querySelector()
检索元素,使用tagName
检索标签名称
document.querySelector('[name="sample"]').tagName.toLowerCase();
Codepen demo
【讨论】:
@Sankar:jQuery 无法获取标签名称。它没有用于此的 API。它可以选择元素,但无论如何你最终都必须放弃 jQuery,那为什么不完全放弃呢? @fcalderan 谢谢。它的工作。谢谢。 对 vanillaJS 轻量级和可移植解决方案而不是 jQuery 投反对票?真的吗?【参考方案2】:在 jquery 中你可以这样做:
$("[attr='name']")
这将选择你想要的元素。
如果你想在原生 js 中做到这一点,你可以这样做:
var x = document.getElementsByName("attribute name");
这将返回一个数组,在您的情况下,您将只有一个元素,因此您需要的元素是 x[0]。
【讨论】:
【参考方案3】:使用这个:
$('input[name="name_of_element"]')
select、textarea 等也是如此。
【讨论】:
【参考方案4】:您可以使用.tagName
console.log(document.querySelector('[name=sample]').tagName);
<input type="text" name="sample" />
【讨论】:
没有。 javascript 也适合我。我对这段代码很满意。谢谢。 ps。如果你想用 jQuery 选择器来做这个,你可以这样做 ->$('[name="sample"]').each((r,el) => console.log(el.tagName));
【参考方案5】:
您应该能够使用标签名称和名称属性选择它们,如下所示:$('input[name="sample"]')
$('input[name="sample"]').val('Lorem Ipsum');
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<input type="text" name="sample" />
【讨论】:
以上是关于需要使用Jquery按元素名称获取标签名称[重复]的主要内容,如果未能解决你的问题,请参考以下文章