По нажатию на кнопку записать квадрат введенного числа

Даны два инпута и кнопка. В первый пользователь вводит число. По нажатию на кнопку запишите во второй инпут квадрат введенного числа.

let elem41 = document.querySelector('#elem-4-1');
let elem42 = document.querySelector('#elem-4-2');
let btn4 = document.querySelector('#btn-4');

btn4.addEventListener('click', function () {
    elem42.innerHTML += Math.pow(elem41, 2);
})
<input type="number" id="elem-4-1" value="">
    <input type="number" id="elem-4-2" value="">
    <input type="submit" id="btn-4">


Ответы (1 шт):

Автор решения: novvember

Расшифрую комментарий, почему код не работает:

  1. У поля ввода (инпутов) нет свойства innerHTML. Оно есть у обычных элементов, типа div, p, h1. Для инпутов используют свойство value. То есть, чтобы получить введенное содержимое поля надо писать elem42.value = .... Такие вещи можно загуглить, например "javascript как получить содержимое input".
  2. Точно так же в математической функции возведения в степень Math.pow() нужно указывать не сам элемент, а значение элемента.

let elem41 = document.querySelector('#elem-4-1');
let elem42 = document.querySelector('#elem-4-2');
let btn4 = document.querySelector('#btn-4');

btn4.addEventListener('click', function () {
  elem42.value = Math.pow(elem41.value, 2);
})
<input type="number" id="elem-4-1" value="">
<input type="number" id="elem-4-2" value="">
<input type="submit" id="btn-4">

→ Ссылка