单击按钮前的事件 运行
Event run before click button
这是我的代码:
<body>
<button id="mybtn">Click Me!</button>
<script>
document.getElementById("mybtn").onclick = sum(2,5);
function sum(a,b) {
document.getElementById("x").innerHTML = a + b;
}
</script>
</body>
为什么文档在点击按钮前显示 7?
那里发生了什么你正在执行函数而不是分配它
这里有一个解决方案:
document.getElementById("mybtn").onclick = function(){ sum(2,5) };
除了@NetaMeta 的回答之外,您还可以使用 Function.prototype.bind() 方法从 sum
函数创建新函数并添加参数:
document.getElementById("mybtn").onclick = sum.bind(null, 2, 5);
这是我的代码:
<body>
<button id="mybtn">Click Me!</button>
<script>
document.getElementById("mybtn").onclick = sum(2,5);
function sum(a,b) {
document.getElementById("x").innerHTML = a + b;
}
</script>
</body>
为什么文档在点击按钮前显示 7?
那里发生了什么你正在执行函数而不是分配它
这里有一个解决方案:
document.getElementById("mybtn").onclick = function(){ sum(2,5) };
除了@NetaMeta 的回答之外,您还可以使用 Function.prototype.bind() 方法从 sum
函数创建新函数并添加参数:
document.getElementById("mybtn").onclick = sum.bind(null, 2, 5);