Javascript 获取某个a标签的href并进行分解
日期:
标签:javascript,Web
如需帮忙改代码,或者WordPress二次开发、PHP网站建设等需求,可联系我购买付费服务: 点此联系我
有些时候,我们并不能完全掌握网页的代码编辑权,如用BSP博客,但是又想从中修改某些参数,或者想获得某些信息,那怎么办呢?
本文将以实例的形式,介绍如何获得网页中某个a标签中的href,并将其分解获得其中的id值。
问题背景:
原网页中已经有如下代码,且不能更改,class标签在该页面中是唯一的:
<a href="home-uid-100.html" class="noborder">user100</a>
现在我想获得a标签href中的链接uid号100,然后放到新的链接中,如:
<a href="h_id=100">user100</a>
以下是代码实现
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.1//EN" "http://www.w3.org/TR/xhtml11/DTD/xhtml11.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
<!-- 以下代码在实际情况下不可编辑 -->
<a class="noborder" href="home-uid-100.html">露兜博客</a>
<!-- 自己可编辑的代码,以下链接将打开 http://www.ddd.com/u_id=100 -->
<a href="javascript:window.open('http://www.ddd.com/u_id='+value,'_blank');void(0);">方法一</a>
<!-- 以下链接地址也为 http://www.ddd.com/u_id=100 -->
<a href="http://www.ddd.com/u_id=" onclick="window.open(this.href+value);return false;">方法二</a>
</body>
<script language="javascript">
<!--
// 说明:Javascript 获取某个a标签的href并进行分解的方法
// 整理:https://www.ludou.org
// 全局变量,获取链接中的参数值
var value = "";
function get()
{
// 搜索所有 a 标签,并保持在 _el 中
var el = [],
_el = document.getElementsByTagName('a');
/*
* 如果你要找的a标签中有id="",如<a id="ku" href=""></a>
* 那么以上两行可以改为
* var el = [],
* _el = document.getElementsById('ku');
*/
//遍历_el,获得含有 class=="noborder" 的a标签的href值
for (var i=0; i<_el.length; i++ ) {
if (_el[i].className == 'noborder' )
{
// 得到的a标签的href
value = _el[i].href;
// 进行正则匹配,获得href中uid-后面的参数值
var re = /uid\-([^\.]*)/i;
var r = value.match(re);
value = r[1];
break;
}
}
}
// 执行函数
window.onload = get
//-->
</script>
</html>
-- 完 --
本文采用 「CC BY-NC-SA 4.0」创作共享协议,转载请标注以下信息:
原文出处:露兜即刻 https://www.ludou.org/javascript_get_a_href.html
现在js 的一个变量里已经保存了 <a href="h_id=100">user100</a> 怎么从这个变量里取user100 ? 谢谢。。。
@long儿 a[2]就是你想要的东西
<script type="text/javascript">
var str= '<a href="h_id=100">user100</a>';
var s = /<a href="h_id=([0-9]+)">([a-z0-9]+)<\/a>/gi;
var a = s.exec(str);
alert(a[2]);
</script>