Javascript 如何从href获取文本?
我无法从href获取此文本。我正在处理dom,我想从以下href获取文本:Javascript 如何从href获取文本?,javascript,dom,Javascript,Dom,我无法从href获取此文本。我正在处理dom,我想从以下href获取文本: <div class='xx'> <a href='zz' class='button> ... 但它工作不正常下面的代码将从链接中获取文本: var x = document.getElementsByClassName('xx')[0].getElementsByTagName("a")[0].getAttribute("href"); 但它不能正常工作 因为 您没有具有id属性.x
<div class='xx'>
<a href='zz' class='button>
...
但它工作不正常下面的代码将从链接中获取文本:
var x = document.getElementsByClassName('xx')[0].getElementsByTagName("a")[0].getAttribute("href");
但它不能正常工作
因为
- 您没有具有
属性id
的元素.xx
以.xx
为目标,而不是锚定div
<div class='xx'>
<a href='zz' class='button'>Some text</a>
</div>
或者干脆
document.querySelector( ".xx .button" ).href;
这对我有用
document.getElementsByClassName("xx")[0].getElementsByTagName("a")[0].getAttribute("href")
getElementById
将通过该ID获取元素。您有一个锚(虽然格式不正确),它不是ID而是类。其次,您的目标是父div。您应该改为使用querySelector()
以标记为目标。然后使用href
获取href
const href=document.querySelector('.xx.button').href;
console.log(href)代码>
您可以使用id而不是类,因为类返回未定义的值。此外,您还尝试使用getby id获取类
错:
document.getElementById(“.xx”).getAttribute(“href”)
函数h()
{
警报(document.getElementById(“button”).href);
}
yourref
保存您请求的值。这与只使用您提供的部分代码一样精确如果页面上的其他地方你有一个带有class xx的div和一个带有class按钮的链接,你将不会玩得很开心
解决方案-让目标元素或父元素具有唯一id,然后从中写入选择。href是另一个元素,而不是属性。“.xx”是类选择器,而不是id选择器。什么文本?您的示例中没有显示任何文本。我建议你参加一个初学者教程,因为这看起来像是猜测。xx
是一个类而不是一个ID。阅读这里:你完全正确!注释已删除…zz不是一个class@CiroSpaciari谢谢,现在就用按钮更正了同样的问题,当你在做的时候,你也可以指出html中的错误(一个a
类的未关闭属性值)@FedericoklezCulloca我很确定这是一个打字错误,无论如何都会指出同样的错误。有趣的是,这个过于复杂的答案是第一次尝试时唯一正确的答案。
document.querySelector( ".xx .button" ).href;
document.getElementsByClassName("xx")[0].getElementsByTagName("a")[0].getAttribute("href")
var yourhref = document.querySelector("div.xx a.button").href