Ребята, я изучаю javascript, я просто хочу взять ввод из текстового поля и отобразить его в окне предупреждения, но некоторые, как мой вход всегда показывает нуль. Вот мой код
var val = document.getElementById('val').value;
function testFunc() {
alert(val);
return false;
}
<form action="#" onsubmit="return testFunc()">
<input type="text" id="val" name="val">
<button type="submit" value="submit" name="submit">Submit</button>
</form>
Вам нужно получить значение внутри функции, а не снаружи, так как при загрузке страницы значение пусто, следовательно, оно показывает то же значение, что и при загрузке страницы для ввода, а не в текущий момент, см. Ниже
<form action="#" onsubmit="return testFunc()">
<input type="text" id="val" name="val">
<button type="submit" value="submit" name="submit">Submit</button>
</form>
<script>
function testFunc() {
var val = document.getElementById('val').value;
alert(val);
return false;
}
</script>
Переместить var val = document.getElementById('val').value;
внутри вашей функции обработчика.
лайк
function testFunc() {
var val = document.getElementById('val').value;
alert(val);
return false;
}
<form action="#" onsubmit="return testFunc()">
<input type="text" id="val" name="val">
<button type="submit" value="submit" name="submit">Submit</button>
</form>
Почему: вы хотите получать значение только на странице, а не при загрузке DOM
function testFunc(e){
e.preventDefault();
//add your code here
}
Просто позвоните в свою функцию. Не возвращайте его
var val = document.getElementById('val').value;
не распространяется в будущее; если вы хотите получить текущееvalue
вашего ввода, вы должны сделать это после нажатия кнопки.