@Nikitos251

Простое задание на js, хочу понять что я делаю не так?

Только начал изучать JS, задача сделать простейшую форму для вычисления синуса/косинуса. Форму я сделал, обрабатывается, но почему-то часть значений вычисляет верно, а часть нет.

<!DOCTYPE html>
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
	<title>Функции. Посчитать синус косинус</title>
	<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
</head>
<body>
	<script type="text/javascript">
		function calculate(form) {
			var m = 0;
			if (myform.sincos.value == 1) m=(Math.sin(Math.PI/180 * myform.number.value));
			else m=(Math.cos(Math.PI/180 * myform.number.value));
			alert (m);
			}
	</script>
	<form name="myform" action="#" method="post" onsubmit="return calculate(this)">
		<p>
			Введите угол в градусах: <input type="number" name="number" />
		</p>
		<p>sin/cos:<select name="sincos">
				<option value="1">sin</option>
				<option value="2">cos</option>
			</select>
		</p>
		<p>
			<input type="submit" value="Посчитать" />
		</p>
	</form>
</body>
</html>
  • Вопрос задан
  • 392 просмотра
Пригласить эксперта
Ответы на вопрос 1
@SimasikS
Я есть
Потому что у вас в любом случае вычисляется косинус нужно привести value к числу(он будет строкой по дефолту)
сделайте так +myform.sincos.value === 1
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Похожие вопросы
25 нояб. 2024, в 15:52
3000 руб./за проект
25 нояб. 2024, в 15:43
1500 руб./за проект