【发布时间】:2013-07-03 14:29:28
【问题描述】:
我需要使用 javascript 动态创建一个按钮。所以我在“脚本”标签之间写了这些代码。
window.onload = function () {
var newButton = document.createElement('input');
newButton.type = 'button';
newButton.value = 'What's the day today?';
newButton.id = 'btn1';
newButton.onclick = myfunction();
div1.appendChild(newButton);
}
function myfunction() {
var x = new Date().getDay();
switch (x) {
case 0: alert("sunday"); break;
case 1: alert("monday"); break;
case 2: alert("tuesday"); break;
case 3: alert("wednesday"); break;
case 4: alert("thursday"); break;
case 5: alert("friday"); break;
case 6: alert("saturday"); break;
}
}
页面加载后,“myfunction()”函数会自动运行。之后,当我按下此按钮时,什么也没有发生。我的错误是什么?
【问题讨论】:
-
您帖子中的颜色编码显示了您的问题。
-
这无论如何都不会运行,因为你没有逃脱“什么”中的'。对于其他一切,请参阅@Arun P Johny 的解决方案。
-
好吧,你正在调用
newButton.onclick = myfunction();中的函数。 -
注意:switch 并不是真正需要的:使用简单直接的数组查找。例如
alert(["Sunday", ..., "Saturday"][x]); -
感谢您所做的一切。我使用了 Arus 的解决方案,它奏效了。
标签: javascript html function button dynamic