提醒:JavaScript初学者。
<!DOCTYPE HTML>
<html>
<head>
<script>
function mostraralerta() {
alert("you've clicked!");
}
function hacerclic() {
document.getElementById("boton").onClick = function(){
mostraralerta();
};
}
window.onLoad=hacerclic();
</script>
</head>
<body>
<input type="button" id="boton" value="click">
</body>
</html>
当您点击输入时,它不会显示警报。如果我删除匿名函数并直接执行:
document.getElementById("boton").onClick = mostraralerta();
或使用其他选择器:
document.querySelector("#boton").onClick = mostraralerta();
只要您打开网页,它就会显示警告,而不是在点击按钮时显示警告。
此外,我尝试使用另一个html标签而不是输入,但我使这个代码工作的唯一方法是直接将事件onClick放在输入上,但我想知道如何制作它适用于函数和onload。
答案 0 :(得分:5)
通过在MapInfo
末尾添加括号,您可以执行该功能并将其结果存储在SQL
您想要做的是传递函数的名称而不执行它,像这样:
mostraralerta
答案 1 :(得分:0)
document.getElementById("boton")
函数时, hacerclic
为空。这是因为没有渲染输入标记。你可以通过将window.onload移动到这样的结尾来修复它
<body>
<input type="button" id="boton" value="click">
<script>window.onload= hacerclic();</script>
</body>
onclick全是小写:
document.getElementById("boton").onclick = function(){
mostraralerta()
}