Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   получить значение html (https://javascript.ru/forum/misc/56436-poluchit-znachenie-html.html)

Дмитрий_Кирсанов 16.06.2015 11:05

получить значение html
 
Как в функции mismatch получить значение элемента sq1, записанное в него в функции FillInDigits()???

function mismatch(n)
{
  alert(document.getElementById("sq1").outerHTML);
}

function FillInDigits()
{
  var sq1 = Math.floor(Math.random()*15 + 1);
  var sq2 = Math.floor(Math.random()*15 + 1);
  mismatch(2);
  
  document.getElementById("sq1").innerHTML = sq1;
  document.getElementById("sq2").innerHTML = sq2;
} 

window.onload = FillInDigits();

tsigel 16.06.2015 11:26

function mismatch(n)
{
  alert(document.getElementById("sq1").innerHTML);
}

function FillInDigits()
{
  var sq1 = Math.floor(Math.random()*15 + 1);
  var sq2 = Math.floor(Math.random()*15 + 1);
  mismatch(2);
  
  document.getElementById("sq1").innerHTML = sq1;
  document.getElementById("sq2").innerHTML = sq2;
} 

window.onload = FillInDigits();

Дмитрий_Кирсанов 16.06.2015 11:39

Нет, нет и нет. Выводит пустой align, а мне нужна цифра!

tsigel 16.06.2015 12:05

<div id='sq1'></div>
<div id='sq2'></div>

<script>
function mismatch(sq1) {
  alert(sq1 || document.getElementById("sq1").innerHTML); // если передан параметр выводим его, а если нет - спрашиваем значение элемента
}

function FillInDigits() {
  var sq1 = Math.floor(Math.random()*15 + 1);
  var sq2 = Math.floor(Math.random()*15 + 1); 
  
  mismatch(sq1); // нормальный способ - просто передать цифру параметром
  document.getElementById("sq1").innerHTML = sq1;
  document.getElementById("sq2").innerHTML = sq2;
  mismatch(); // У вас не получалось получить цифру потому что вы спрашивали значение элемента ДО того как присвоили его
} 

window.onload = FillInDigits();
</script>

ruslan_mart 16.06.2015 15:56

Цитата:

Сообщение от Дмитрий_Кирсанов
window.onload = FillInDigits();

window.onload = FillInDigits;

tsigel 16.06.2015 16:04

Ruslan_xDD,
а я не заметил)


Часовой пояс GMT +3, время: 06:44.