Обработчик нажатия кнопки срабатывает просто так, со старта страницы без нажатия

Обработчик нажатия кнопки срабатывает просто так, со старта страницы без нажатия. В чем причина - не могу понять. Хелп! locationButton2 - обычная кнопка. mainTextArea - TextArea.

function startLocationCity(){
    document.getElementById('locationButton2').onclick = setTextInTextArea("qwe");
}

function setTextInTextArea(text){
    document.getElementById("mainTextArea").value = document.getElementById("mainTextArea").value + "\n" + text;
}

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

Автор решения: Sumskyi Vasyl

Проблема в том, что вы вызываете функцию, когда передаете ее в onclick замените

document.getElementById('locationButton2').onclick = setTextInTextArea("qwe");

на

document.getElementById('locationButton2').onclick = () =>setTextInTextArea("qwe");

Так вы обернете свою функцию в обертку, которая уже будет вызывать вашу функцию.

Успехов!

→ Ссылка