获取class中的tagName元素

时间:2017-05-09 14:32:08

标签: javascript html html5 tagname

我想在课堂内获取a的元素并进行更改。

我的HTML是:

<div class="alignleft">
    <a href="http://cismdomain.com/articles/page/2/">« Older Entries</a>
</div>

我想将Older Entries更改为Previous

我的JavaScript代码是:

var oldentries = document.querySelector('.alignleft');
var ainside = document.getElementsByTagName('a');
oldentries.ainside.innerHTML = "Previous";

但这给了我undefined

5 个答案:

答案 0 :(得分:3)

使用Document.querySelector()获取课程'.alignleft'的元素后,您还可以oldentries.querySelector('a');获取'a'中的oldentries元素,然后更改element.innerHTML

var oldentries = document.querySelector('.alignleft'),
    ainside = oldentries.querySelector('a');

ainside.innerHTML = 'Previous';
<div class="alignleft">
  <a href="http://cismdomain.com/articles/page/2/">« Older Entries</a>
</div>

答案 1 :(得分:1)

您需要更新textContent元素的<a>属性。

工作示例:

var linkElement = document.querySelector('.alignleft a');
linkElement.textContent = 'Previous';
<div class="alignleft">
<a>Older Entries</a>
</div>

答案 2 :(得分:0)

Other返回HTML集合。所以你需要迭代它(在你的情况下,它将是第一个条目)。

document.getElementsByTagName

答案 3 :(得分:0)

您可以使用更精确的选择器使用对querySelector的signle调用来查找元素:直接使用.alignLeft a而不是两次。

此代码有效:

var entries = document.querySelector('.alignLeft a');
entries.innerHTML = "Previous"

答案 4 :(得分:0)

您的代码将呈现为类似

的内容
document.querySelector('.alignleft').document.getElementsByTagName('a').innerHTML = "Previous";

此外,getElementsByTagName('a')会将数组渲染为您可以将.innerHTML应用于的对象。

var ainside = document.querySelector('.alignlef a'); // Select first occurance of a inside the first occurance of .alignleft in the document

ainside.innerHTML = "Previous";