所以,我正在阅读有关事件处理程序的教程。我按照指示创建了一个按钮,然后当我点击它时,我想要显示一个警报。而已。但它不会起作用。这是我的HTML代码:
<button id="submit">Submit</button>
这是我的javascript代码:
var myButton = document.getElementByID("submit");
myButton.onclick = function(){
alert("YOu clicked on this button");
}
我正在使用外部js文件,我已将其包含在文档头部的html中。
答案 0 :(得分:10)
document.getElementByID("submit");
- 它是Id
而不是ID
编辑:我觉得将这个单线作为答案非常糟糕,所以为了补充其他人对学习如何使用浏览器控制台作为调试工具的说法,你应该尝试找一个IDE /文本编辑器自动完成功能可以帮助您避免这些麻烦,尤其是在刚开始的时候。
答案 1 :(得分:1)
在页面上创建元素之前,您可能遇到document.getElementById()
发生问题。尝试将JavaScript包含在onload事件中,或将其包含在HTML中的按钮之后。
答案 2 :(得分:0)
getElementById
而非ID
答案 3 :(得分:0)
如前所述,使用带有小写ID的document.getElementById(“submit”)。此外,您可能希望使用setAttribute,以便在按下按钮时触发警报,而不是在遇到警报线时立即打开弹出窗口。
<script language="javascript">
var myButton = document.getElementById("submit");
myButton.setAttribute("onclick", "alert('You clicked on this button')");
</script>
答案 4 :(得分:0)
从document.getElementByID
更改为document.getElementById
,并确保您的脚本保持在正文中的所有元素下方。例如:
<body>
<button id="submit">Submit</button>
<script type="text/javascript">
var myBtn = document.getElementById("submit");
myBtn.onclick = function()
{
alert("this is a click event button");
};
</script>
</body>
或者您可以将脚本放在<head></head>
中,方法是将以下内容添加到您的脚本中:
function initialize()
{
// paste your code in here
}
document.addEventListener("DOMContentLoaded",initialize,false);
希望它有用!