使用jquery获取父级元素的属性

我想通过jquery获取a标签的父级元素的属性来为a的href添加参数

比如a的父级dom元素为div,其属性from的值为test,则在这个a后添加&test,如果父级元素无from属性,则再往上查找,知道找到含有from属性的父元素。

思路如下:

1、查找所有a节点

2、获取其父类,一级一级往上找,使用closest()查找,获取其from参数值

3、判断a节点的href属性是否包含?,包含则直接添加 &from ,否则添加?&from 如果添加href为javascript:或者 javascript:void(0) 时则不改变其href属性

现在问题就是,这个函数里面父元素的标签可能不唯一,即可能不仅仅为div,还有span等等。

这是我的实现,但是有部分问题

$("a").click(function a() {
var node = $(this);
var href = node.attr("href");
if (href === 'javascript:' || href === "javascript:void(0)" || href === '') {} else {
var isset = '?';
do {
var parent = node.parent();
isset = parent.attr("from");
}
while (isset === 'undifined');
$(this).href += isset;
}
});

相关阅读:

javascript是面向对象的,怎么体现javascript的继承关系?

symfony自动登录问题

thinkphp S函数使用phpredis出现问题

怎样在手机网页中判断当前是横屏或者竖屏?

github修改用户名和邮箱后,这个地方头像不显示也没办法点击了,是什么原因?

php - Dependency Injection依赖注入 和 自动加载 各自的优缺点

求hudson 大规模访问经常服务挂的解决方法

scrapy的异常处理一般怎么做?

重复调用felixge/node-mysql的createPool()函数(参数一样)是否会重复创建连接池?

32位编译器编译的库和64位编译器编译的库相互兼容吗?

php文件打包压缩下载

table的border颜色问题

谈新窗口打开链接的合理方式

帮忙看看我自己设计的API的用户token的流程对不对

WEB开发中,输入框被弹起的虚拟键盘遮挡住了?

UIView如何实现对某一个子view进行超出bounds的不裁剪,其他的子view却都裁剪?

Python多线程下载器,文件下载正确,但是无法再Windows上运行

wordpress上传图片HTTP错误

一般在设计数据表的时候用什么工具?

javascript里面什么参数console.log(param)可以打印出类似log4j一样的信息