jquery里遍历获取标签所有属性的方法及实例推荐 亲测 原创


  • :
  • 03-27 21:13
  • :
  • 28次
  • :
  • 0条
  • 0赞

简介本文讲的是在jquery里读取指定标签的所有属性的方法,及完整的在线实例演示。

站长在做一个小web项目的时候,需要实现这样一个功能,点击不同的链接,执行不同条件的ajax

要完成这样的一个效果,很简单,可能根据链接的ID来判断,这是最常用的方法,但这种就读的缺点就是要根据不同的ID来判断,然后写好多代码,因此,站长想了个优化后的方法,就是把ajax的条件直接写到链接的属性里,然后在点击链接后,通过读取链接的所有属性,来直接发送ajax请求。

这就需要我们要先实现这样一个功能,在jquery里,把标签的所有属性都读取出来

我们知道,在jquery里,我们要读取一个标签的属性,是很简单的:

$("#ID").attr("属性名称");

当然,类似的还是$.prop(),$.data(),不过这三个各有区别,以后站长再来分析它们三个的区别和用法。

不过,这都是在知道“属性名字”的前提下,才获取到的属性值,那么,我们能不能在不知道属性名字的前提下,获取到标签的所有属性呢?

当然是可以的,不过站长找了很多的资料,发现,jquery里实现不了的,必须得用js的方法才行,因为要实现这样的功能,需要用到“

attributes”属性,但在jquery里,是没有和attributes相关的属性和方法的。

不说废话,来看具体的实例:

假如,我们有这样一个标签:

<div id="aijquery" class="mx-5" a="aaa" b="bbb" onclick="alert('aaa');">
 	
</div>

那么,我们就可能通过下面这样的方法来读取到这个标签的所有属性名称及属性值:

var obj=$("#aijquery").get(0).attributes;
    $.each(obj,function(){
    $("#aijquery").append(this.nodeName+":"+this.nodeValue+"<br>");		
});

因为attributes是js里的方法,所以我们需要把jquery对象转成js对象,参考:《jquery对象与dom对象之间互相转换的方法,使jquery对象可以直接使用js里的方法

这里是具体的在线演示:遍历获取节点的所有属性的在线演示



您正在找的文章可能是: