DaiCuoBBs

 找回密码
 免费注册

QQ登录

只需一步,快速开始

[jQuery] jquery里遍历获取标签所有属性的方法及实例

[复制链接]
admin 发表于 2020-5-18 23:57:53 | 显示全部楼层 |阅读模式
站长在做一个小web项目的时候,需要实现这样一个功能,点击不同的链接,执行不同条件的ajax。

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

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

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

  1. $("#ID").attr("属性名称");
复制代码
当然,类似的还是$.prop(),$.data(),不过这三个各有区别,以后站长再来分析它们三个的区别和用法。

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

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

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

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

假如,我们有这样一个标签:
  1. <div id="aijquery" class="mx-5" a="aaa" b="bbb" onclick="alert('aaa');">
  2.    
  3. </div>
复制代码
那么,我们就可能通过下面这样的方法来读取到这个标签的所有属性名称及属性值:
  1. var obj=$("#aijquery").get(0).attributes;
  2.     $.each(obj,function(){
  3.     $("#aijquery").append(this.nodeName+":"+this.nodeValue+"<br>");      
  4. });
复制代码
因为attributes是js里的方法,所以我们需要把jquery对象转成js对象

摘自  爱jQuery:http://www.aijquery.cn/Html/biaoqian/206.html

您需要登录后才可以回帖 登录 | 免费注册

本版积分规则

QQ|Archiver|手机版|小黑屋|大错站长论坛

GMT+8, 2020-5-29 19:36 , Processed in 0.056254 second(s), 22 queries .

Powered by Discuz! X3.4

Copyright © 2001-2020, Tencent Cloud.

快速回复 返回顶部 返回列表