document.getElementById().innerText в Chrome

#javascript #google-chrome #getelementbyid #innertext

#javascript #google-chrome #getelementbyid #внутренний текст

Вопрос:

Быстрый кроссбраузерный вопрос JS, при установке значения текстового поля:

 document.getElementById("balanceText").innerText = "111";
  

и

 document.getElementById("balanceText").value = "111";
  

Оба работают великолепно в IE,

Но они не будут работать в Chrome, FF, Opera или Safari.

Есть ли альтернативный метод, который будет работать в этих браузерах?

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

1. Как выглядит ваша разметка?

Ответ №1:

При прочих равных document.getElementById("balanceText").value = "111"; условиях отлично работает в любом значимом * браузере, поддерживающем JS.

Убедитесь, что у вас есть один и только один элемент с id="balanceText" и что он действительно имеет это в качестве идентификатора, а не только имя.

* вас не волнует NS 4, не так ли?

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

1. Fwiw (немного), value свойство отлично работает в NS 4 (и, действительно, NS 3 и NS 2). Это просто document.getElementById бит, который этого не делает.

2. Кроме того, использование innerText в текстовых полях не работает в некоторых браузерах (например, Firefox), поэтому не рекомендуется.