Javascript - 动态添加带有onClick属性的按钮

时间:2014-04-09 16:41:08

标签: javascript html

我正在使用此代码,它添加了按钮:

document.getElementById("items").innerHTML=document.getElementById("items").innerHTML+
('<input type="button" value="'+document.getElementById("add").value+'"><br>');

有效。现在我要添加onClick属性:

document.getElementById("items").innerHTML=document.getElementById("items").innerHTML+
    ('<input type="button" onClick="alert("'+document.getElementById("add").value+'")"
     value="'+document.getElementById("add").value+'"><br>');

如果单击按钮,我想显示带有按钮名称的警报(add是按钮ID)。但没有显示警报。可能我在onClick中犯了错误,因为正在添加按钮 我的代码怎么了?

2 个答案:

答案 0 :(得分:9)

以正确的方式行事

var items  = document.getElementById("items"),
    button = document.createElement('input'),
    br     = document.createElement('br'),
    add    = document.getElementById("add").value;

button.type  = 'button';
button.value = add;
button.addEventListener('click', function() {
    alert(add);
}, false);

items.appendChild(button);
items.appendChild(br);

答案 1 :(得分:0)

我设法做到了!

 document.getElementById("items").innerHTML=document.getElementById("items").innerHTML
+('<input type="button" onClick="alert(\''+document.getElementById("add").value+'\')"
 value="'+document.getElementById("add").value+'"><br>')

我在警告中用"(单引号)替换了\'(双引号) 工作,添加按钮,显示警报。