Мой javascript работает только, он не изменяет текст

#javascript

#javascript

Вопрос:

Мой скрипт не работает, я просто пытаюсь изменить свой текст в элементе div

Вот мой код javascript

 var jumbo = document.getElementsByClassName("jumbotron");
var button = document.getElementById("changebg")

function changeBackground(){
  document.getElementsByClassName("jumbotron").innerHTML = "BLASAKLSJL";
}
  

И это мой html-код :

 <div class="jumbotron">
  <button id="changebg" onclick="changeBackground()">
  CLICK ME
  </button>
</div>
  

Ответ №1:

document.getElementsByClassName() вернет массив объектов, которые вам нужно указать, тот, который вы хотите обновить.

Пример :

 document.getElementsByClassName("jumbotron")[index].innerHTML = "BLASAKLSJL";
____________________________________________^^^^^^^
  

Если есть только один элемент с class jumbotron , чтобы вы могли использовать [0] :

 document.getElementsByClassName("jumbotron")[0].innerHTML = "BLASAKLSJL";
  

Если есть несколько элементов, вам следует перебирать их :

 var elements = document.getElementsByClassName("jumbotron");

for(var i=0;i<elements.length;i  ){
     elements[i].innerHTML = "new html here";
}
  

Надеюсь, это поможет.

Комментарии:

1. Как мне это сделать? а также, здесь есть только один jumbotron? что, если их несколько? как мне указать?

2. Если используется только один so [0] , если их несколько, вам следует перебирать их .. обновляя мой ответ.

3. О, хорошо, я попробую

4. @UdayKiran не имеет значения, есть ли только один или их много. getElement(Ы) по имени класса всегда будет возвращать массив. вам решать, какую из этих записей массива вам нужно использовать.