Javascript 如何通过jquery获取匹配id
如何通过jquery获取匹配(id) 我想在(span)之间的(href)中获得(id) 如果代码 这里 HTMLJavascript 如何通过jquery获取匹配id,javascript,jquery,Javascript,Jquery,如何通过jquery获取匹配(id) 我想在(span)之间的(href)中获得(id) 如果代码 这里 HTML <table> <tr> <td class='zero'> <span> <a href="http//google&id=222.com">123</a> <a>hgi</a> </span> <span> <a
<table>
<tr>
<td class='zero'>
<span>
<a href="http//google&id=222.com">123</a>
<a>hgi</a>
</span>
<span>
<a href="http//google&id=111.com">123</a>
<a>hgi</a>
</span>
<span>
<a href="http//google&id=333.com">123</a>
<a>hgi</a>
</span>
</td>
</tr>
</table>
$(".zero span").each(function(){
$(this).find("a").attr("href").match(/id=/);
});
但是错误>_<
为什么?
和
怎么做
我想要
id=222
id= 333
id= 111
你需要这个:
$(".zero span").each(function(){
alert($(this).find("a").attr("href").match(/id=\d+/)[0]);
});
你试过了吗
$(this).find("a").attr("href").match(/id=.*/);
这将匹配id和后面的所有字符。您的一些
元素没有href
属性<在这种情况下,code>attr()将返回undefined
。当试图调用undefined
上的match()
时,JavaScript会抛出一个错误
用以下方法修复它:
$(".zero span").each(function(){
href = $(this).find("a").attr("href");
if (href !== undefined) {
href.match(/id=/);
}
});
或者将选择器更改为包含a[href]
外部:
$(".zero span a[href]").each(function(){
$(this).attr("href").match(/id=/);
});
内部:
$(".zero span").each(function(){
$(this).find("a[href]").attr("href").match(/id=/);
});
如果它是动态生成的,为什么不直接使用一个实际的ID,也就是说,然后瞄准它呢?如果URL足够多样和复杂,您可能想尝试使用deparam函数,而不是编写自己的URL