1

我想通过角度动态创建按钮,我现在正在使用 JavaScript 执行此操作并且能够创建按钮,我正在尝试更改按钮的类名但出现以下错误,

错误:

类型 上不存在属性“className” HTMLCollectionOf<Element>

代码:

var element = document.getElementsByClassName("btnshow")
element.innerHTML = "btnhide";
console.log(HTMLElement);
4

3 回答 3

1

document.getElementsByClassName返回一个数组。你不能像那样访问 element.innerHTML,你需要通过索引来访问它element[0].innerHTML,例如。

于 2020-01-03T21:02:52.840 回答
0

我没有得到您尝试过的确切代码,但正如您所说,您正在尝试使用 Angular 创建动态按钮。由于可重用组件是 Angular 的一大优点,您可以尝试制作可重用组件。

请参阅以下内容:

https://stackblitz.com/edit/angular-nmfpht

于 2020-01-04T05:24:33.733 回答
0

@jebprubio document.getElementByClassName() 返回找到的元素的 HTMLCOllection。

如果您确定,将会有一个元素,下面的代码将起作用:

var element = document.getElementsByClassName("btnshow");
element.innerHTML[0].innerHTML = "btnhide";

如果我错过了什么,请回复。

于 2020-01-03T21:01:11.560 回答