Я пытаюсь получить значение своего ввода, но он говорит о событии мыши. Если я просто вызову эту функцию вместо eventListener, она скажет undefined.  пусть btn = document.getElementById ('btn'); пусть пра = ...

0
Ishan Ahmed 14 Янв 2021 в 17:05

1 ответ

Лучший ответ

Две проблемы.

  1. Аргумент pra обработчика событий представляет событие (событие мыши, как вы говорите) и затмевает глобальную переменную pra. Вы можете убрать аргумент, чтобы избавиться от затемнения.

  2. Глобальная переменная pra содержит значение, которое было (пусто) при загрузке скрипта. Вам нужно сделать pra представляющим входной элемент.

let btn = document.getElementById('btn');
let pra = document.getElementById('inp1');
let cont = document.getElementById('container')


function execute() {

    let newElemet = document.createElement('p');
    newElemet.innerHTML = pra.value;
    cont.appendChild(newElemet)

}
btn.addEventListener('click', execute)
<div id="container">
      <input id="inp1" type="text">
      <button id="btn">Add</button>
    </div>
1
Charlie 14 Янв 2021 в 14:17