原始碼 onclick="displayDate()" 未傳參數,但函式定義 displayDate(id1) 需要參數,導致 document.getElementById(id1) 拋錯。
<!DOCTYPE html>
<html><body>
<button onclick="displayDate()">顯示日期</button>
<p id="demo"></p>
<script>
function displayDate() {
document.getElementById("demo").textContent = new Date().toLocaleString();
}
</script>
</body></html>
textContent 而非 innerHTML,防止 XSS。toLocaleString() 依瀏覽器語系顯示完整日期時間,比 Date() 更易讀。<button id="btn">顯示日期</button>
<script>
document.getElementById("btn").addEventListener("click", () => {
document.getElementById("demo").textContent = new Date().toLocaleString();
});
</script>
採用 addEventListener 讓 HTML 結構與行為分離,是現代前端最佳實踐。