簡體   English   中英

如何獲得href的文字?

[英]How can I get text from href?

我在從href獲取此文本時遇到問題。 我正在研究dom,我想從此href獲取文本:

<div class='xx'>
  <a href='zz' class='button>
...

我試圖做某事:

document.getElementById(".xx").getAttribute("href")

但是它不能正常工作

但是它不能正常工作

因為

  • 您沒有id屬性為.xx的元素,
  • .xx定位div而不定位錨

另外,您的定位標記的屬性未正確關閉,也未給出關閉標記。

<div class='xx'>
  <a href='zz' class='button'>Some text</a>
</div>

您有一個類,因此可以通過querySelector使用類選擇器本身

document.querySelector( ".xx .button" ).getAttribute( "href" )

或簡單地

document.querySelector( ".xx .button" ).href;

getElementById將通過該ID抓取元素。 您有一個錨(盡管格式不正確),但它不是ID,而是類。 其次,您要定位父div。 您應該改為使用querySelector()定位標簽。 然后獲取href,您將使用href

 const href = document.querySelector('.xx .button').href; console.log(href); 
 <div class='xx'> <a href='zz' class='button'></a> </div> 

下面的代碼將從鏈接中獲取文本:

var x = document.getElementsByClassName('xx')[0].getElementsByTagName("a")[0].getAttribute("href");

這對我有用

document.getElementsByClassName("xx")[0].getElementsByTagName("a")[0].getAttribute("href")

您可以使用id而不是class,因為class返回未定義的值。您還嘗試使用getby id獲取class

錯誤:

document.getElementById(“。xx”)。getAttribute(“ href”)

 function h() { alert(document.getElementById("button").href); } 
 <a href='zz' id='button' onclick='h();'> asd</a> 

var yourhref = document.querySelector("div.xx a.button").href

yourhref保留您要求的值。 僅使用您提供的部分代碼就可以做到這一點。 如果頁面上的其他地方有一個xx類的div以及一個帶有class按鈕的鏈接,那么您就不會過得很開心。

解決方案 -讓您的目標元素或父元素具有UNIQUE ID,然后從那里寫一個選擇。

是不是單引號丟失的原因?

<a href='zz' class='button'>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM