在 document.write 元素之前无法将属性“onclick”设置为 null
2018-06-23
124
我做错了什么?如果这是重复的问题,请将我重定向到正确的问题,因为我找不到任何相关信息。
就这么简单:
我收到此错误: “ Uncaught TypeError:无法将属性‘onclick’设置为 null ”
在这段超级超级简单的代码中:
window.onload = function() {
document.write('<input id="a" type="button" value="This is a button :)">');
document.getElementById("a").onclick = alert("a");
}
这怎么可能? 问候。
2个回答
将单击按钮后运行的代码放入函数中将使 Javascript 将该函数与用户的操作“连接”起来。
window.onload = function() {
document.write('<input id="a" type="button" value="This is a button :)">');
document.getElementById("a").onclick = function() {
alert("a");
};
}
否则,您可以使用代码中已定义的另一个函数,而不是创建新函数,但将 onclick event = 设置为不带括号的函数,如下所示。
function whenYouClick() {
alert("a");
}
window.onload = function() {
document.write('<input id="a" type="button" value="This is a button :)">');
document.getElementById("a").onclick = whenYouClick;
}
Francesco
2018-06-23
您的代码可以改为:
window.onload = function() {
document.write('<input id="a" type="button" value="This is a button :)">');
document.getElementById("a").onclick = alert("a");
}
您可以使用:
window.onload = function() {
document.write('<input id="a" type="button" value="This is a button :)">');
document.getElementById('a').setAttribute('onclick','alert(0)');
}
Alper Gündöken
2018-06-24