Javascript-форум (https://javascript.ru/forum/)
-   Общие вопросы Javascript (https://javascript.ru/forum/misc/)
-   -   Выдает 0 на input.value (https://javascript.ru/forum/misc/80595-vydaet-0-na-input-value.html)

AMATORx 26.06.2020 20:31

Выдает 0 на input.value
 
Подскажите пожалуйста. Выдает только 0, где ошибся?
<!DOCTYPE html>
<html lang="en">
<head>
	<meta charset="UTF-8">
	<title>Калькулятор</title>
	<style>
		body{
			padding-left: 50px;
		}
	</style>
</head>
<body>

	<h1>Калькулятор М³</h1>
	<br>
	Толщина: <input type="text" placeholder="миллиметры" id="thickness"> <br><br>
	Ширина: <input type="text" placeholder="миллиметры" id="width"><br><br>
	Длинна: <input type="text" placeholder="метры" id="height"><br><br>
	Количество: <input type="text" placeholder="шт" id="quantity"><br><br>
	Ценна: <input type="text" placeholder="ценна"  id="price"><br><br>
	<button id="count">Расчитать</button>
	<div id="result"></div>
<script >
	const thickness = document.querySelector('#thickness').value
	const width = document.querySelector('#width').value
	const height = document.querySelector('#height').value
	const quantity = document.querySelector('#quantity').value
	const price = document.querySelector('#price').value
	const result = document.querySelector('#result')
	const count = document.querySelector('#count')

	document.querySelector('input').onkeypress = eve =>{
		if(eve.keyCode < 47 || eve.keyCode >58){
			return false;
		}
	}


	count.onclick = count =>{
		
		let rav = thickness * width
		result.innerHTML = rav
	}


</script>
</body>
</html>

laimas 26.06.2020 20:50

document.querySelector('input') - это вообще-то будет касаться первого найденного поля, а у вас то их не одно.

AMATORx 26.06.2020 23:13

а как сделать что бы все инпуты зацепило?

laimas 27.06.2020 08:56

Цитата:

Сообщение от AMATORx
Ценна: <input type="text" placeholder="ценна"  id="price">

Цена пишется с одной н.
Цитата:

Сообщение от AMATORx
как сделать что бы все

document.querySelectorAll('input').forEach( a => 
    a.addEventListener('input', e => e.target.value = e.target.value.replace(/\D/,''))
)


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