Я пытаюсь сделать нажатие кнопки jquery, чтобы изменить весь текст на определенный текст в родительском div, но, похоже, я не могу получить доступ к переменным, которые находятся за пределами функции jquery
Я перепробовал много решений для работы со стеком, но ни одно из них не сработало, и большинство из них выглядело очень похоже на мой код, поэтому я не понимаю, почему он не работал.
<!DOCTYPE html>
<html>
<head>
<script src="https://code.jquery.com/jquery-3.3.1.min.js" type="text/javascript"></script>
</head>
<body>
<div id="test">
<p>Click the button to get the tag names of the body element's children.</p>
</div>
<button>Try it</button>
<p id="demo"></p>
<script>
$(document).ready(function() {
var Dropdownchildren = document.getElementById("test").children
for (i = 0; i < Dropdownchildren.length; i++) {
console.log(Dropdownchildren[i].innerHTML)
// will work
$(Dropdownchildren[i]).click(function() {
console.log(Dropdownchildren[i].innerHTML)
// not work
})
}
})
</script>
</body>
</html>
Я ожидал, что он напечатает текст, но это не так, и даже с глобальными переменными он не может получить доступ к переменной и дать мне нулевое или неопределенное значение.