Сегодня я начал изучать JavaScript и хочу рассчитать два числа из текстового поля, используя JavaScript. Я хочу показать результат как HTML на самом веб-сайте. Когда я использую форму для отправки значений, она сохраняет сброс моего измененного HTML (секция результата показывает фактический результат на секунду, но сохраняет возврат к значению по умолчанию).HTML-сброс после формы submit
Этого не происходит при использовании кнопки. Но так как я хочу добавить переключатели для выбора из математической операции, я бы предпочел форму (я также не совсем уверен, как определить, какой радиокнопка проверяется через JS).
это мой HTML-форма
<form name="calcForm" onsubmit="calc(num1.value, num2.value)">
<input type="text" id="num1">
<input type="text" id="num2">
<input type="submit" value="submit">
</form>
Это мое решение-раздел (который сбрасывает при использовании формы)
<div id="calcRes" style="display:block;">Lorem ipsum dolor sit amet</div>
Действительная функция JavaScript
function calc(num1, num2) {
var res = Number(num1)+Number(num2);
document.getElementById('calcRes').innerHTML = "Result is " + res;
}
Как Я сказал выше, результат отображается при использовании кнопки вместо «формы»
<button onclick="calc(num1.value, num2.value)">Calculate</button>
Я хотел бы знать, почему измененный HTML переключается на стандартное, решение, как избежать этого, и если в моем коде есть «плохая практика». Я также пытался найти эту проблему, но ничего не могу найти. Я думаю, это просто проблема noobish, но, как я уже сказал, я полный новичок, поэтому, пожалуйста, будьте терпеливы со мной.
Просто бить меня к нему; Я также хотел бы упомянуть 'num1' /' num2' * should * для определения лучшей совместимости браузеров. –
Большое вам спасибо! Поскольку я работал с локальным файлом, я не заметил перезагрузки. :) – Max