Не срабатывает скрипт при нажатии
Есть сам документ, при выборе в полях должен копироваться текс. Сама страничка
<!DOCTYPE html>
<html>
<head>
<meta charset="utf-8">
<title>Копирование</title>
<script src="copyscript.js"></script>
</head>
<body>
<h1>Поля откуда брать</h1>
<select id="select">
<option value="#продажа ">#продажа </option>
<option value="logic">#логика </option>
<option value="value3">Option 3</option>
</select>
<input type="text" id="date" placeholder="дд.мм.гггг" pattern="[0-9][0-9].[0-9][0-9].[0-9][0-9][0-9][0-9]" maxlength="10"/>
<select id="clock1">
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
</select>
<select id="clock2">
<option value="8">8</option>
<option value="9">9</option>
<option value="10">10</option>
<option value="11">11</option>
</select>
<textarea id="textarea"></textarea>
<button id="copy-values-btn">Copy values</button>
</body>
</html>
И скрипт который и должен делать это копирование
function buttonClickHandler(event) {
event.preventDefault();
copyValues();
}
var copyButton = document.getElementById("copy-values-btn");
copyButton.addEventListener("click", buttonClickHandler);
function copyValues() {
var selectValue = document.getElementById("select").value;
var textareaValue = document.getElementById("textarea").value;
var dateValue = document.getElementById("date").value;
var clock1Value = document.getElementById("clock1").value;
var clock2Value = document.getElementById("clock2").value;
var combinedValue = selectValue + " " + dateValue + " " + clock1Value + - + clock2Value + "\n" + textareaValue;
navigator.clipboard.writeText(combinedValue);
alert("Values copied successfully!");
}
Когда я сам скрипт указывал в документе, и делал привязку кнопки через
<button onclick="copyValues()">Copy values</button>
Все отлично работало, но есть необходимость вынести скрипт в отдельный фаил, и видимо я не справился с привязыванием кнопки. Подскажите , что я сделал не так.
Источник: Stack Overflow на русском