简单点。神秘的问题。以下是我的代码。我为输入按钮创建了一个变量。我添加了一个onclick函数。我将输入变量添加到现有div。但是onclick属性没有出现。请帮忙。
var newbutton = document.createElement('input');
var addonclick = "'return sayhi('phrase')'";
newbutton.onclick = addonclick;//does not work
newbutton.type = 'button';
document.getElementById('existingdiv').appendChild(newbutton);
...
function sayhi(phrase){
alert(phrase);
}
也不起作用:
newbutton.id = "buttonid";
....
document.getElementById("buttonid").onload = '"return sayhi('phrase')"';
答案 0 :(得分:1)
onclick属性采用的函数不是字符串,例如
newbutton.onclick = function(){sayhi('phrase')};
答案 1 :(得分:1)
将sayhi分配给.onclick。还给你的按钮一些文字
var newbutton = document.createElement('input');
newbutton.onclick = sayhi;
newbutton.type = 'button';
newbutton.value = 'click';
document.getElementById('existingdiv').appendChild(newbutton);
function sayhi(){
alert("hi");
}
答案 2 :(得分:1)
尝试添加newbutton.onclick = sayhi;
它会起作用。 onclick期望在点击该元素时执行的javascript。这里addonclick
只是一个变量,单击该元素时无需执行任何操作。
答案 3 :(得分:0)
function sayhi(){
alert("hi");
}
var newbutton = document.createElement('input');
newbutton.onclick = sayhi;
newbutton.type = 'button';
document.getElementById('existingdiv').appendChild(newbutton);