簡體   English   中英

如何在JavaScript中按類名然后按id使用get元素?

[英]How to use get elements by class name and then by id in JavaScript?

我最終要做的是在div中找到一個具有已知類名的鏈接並進行更改。 我堅持正確獲取鏈接的內容,無法弄清楚我的錯誤。 使用getElementsByClassName和getElementsByTagName似乎可以分別工作,但是當我一起使用它們時將不工作。 我以前從未使用過jquery,所以我不喜歡那條路線。

這是代碼:

<div class="test">
<a href="http://www.google.com">LINK</a></div>
<button onclick="myFunction()">Test it</button>

<script>
function myFunction()
{
var x=document.getElementsByClassName("test");
x.getElementsByTagName("a")[0].innerHTML="Hello World";
document.write(x[0]);
};

</script>

在兼容的瀏覽器中,您可以簡單地使用document.querySelector()

var x = document.querySelector('.test > a');
x.innerHTML = 'Hello world';

document.querySelector返回單個元素(唯一元素,或多個元素中的第一個),而不是nodeList / collection(由getElementsByTagName()getElementsByClassName() )。

順便說一下,使用jQuery:

$('.test > a').html('Hello world'); // sets the innerHTML of the returned elements 

要么:

$('.test > a').text('Hello world'); // sets the text of the returned elements 

使用查詢選擇器語法,如下所示:

var x = document.querySelector('div.classname > p');

這將導致div.classname中的所有<p>元素。

暫無
暫無

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

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