kipajek
@kipajek
Учусь...

Почему не работает замыкание в JS?

<form action="/file-upload">
    	<input type="text" id="text2">
 </form>
 <div id="echo"></div>
 <button id="button">Отправить</button>

window.onload = function() {

	var item = document.getElementById('text2').value;
	var button = document.getElementById('button');


	button.onclick = getItem;

	function getItem() {

	document.getElementById('echo').innerHTML = item;
	console.log(item);
	
	}

}


Я так понимаю, если у меня одна функция в другой то это замыкание, и функция которая внутри должна увидеть переменные которые снаружи?
  • Вопрос задан
  • 113 просмотров
Решения вопроса 1
@iks_so
У вас значение в переменную item ложится один раз - при загрузке, и больше не меняется.

посмотрите, что будет, если в инпут добавить value="example"

Перенесите присвоение внутрь getItem, до использования.
Ответ написан
Пригласить эксперта
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы