这是我的 HTML:
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>BookInc</title>
<link rel="stylesheet" href="style.css">
</head>
<body style="background-color:white;">
<div id= "mainPage">
</div>
<script src="test.js"></script>
</body>
</html>
Run Code Online (Sandbox Code Playgroud)
和我的 javascript:
var btn = document.createElement('input');
btn.type = "button";
btn.className = "btn";
btn.value = "Negociate";
btn.onclick = console.log("hello");
document.getElementById('mainPage').appendChild(btn);
Run Code Online (Sandbox Code Playgroud)
当我的按钮创建时,onclick 事件会自动触发(我在控制台中打印 hello 而不单击按钮)然后不起作用。当我检查页面时,我意识到我的按钮不再有 onclick(只有类和值)
我不明白为什么所以任何帮助将不胜感激。谢谢。
onclick需要是一个函数。请参阅示例。
var sayHello = function(){
console.log("hello");
};
var btn = document.createElement('input');
btn.type = "button";
btn.className = "btn";
btn.value = "Negociate";
btn.onclick = sayHello;
document.getElementById('mainPage').appendChild(btn);Run Code Online (Sandbox Code Playgroud)
<!doctype html>
<html lang="en">
<head>
<meta charset="utf-8">
<title>BookInc</title>
<link rel="stylesheet" href="style.css">
</head>
<body style="background-color:white;">
<div id= "mainPage">
</div>
<script src="test.js"></script>
</body>
</html>Run Code Online (Sandbox Code Playgroud)