2009-05-04 41 views
2

是否有任何替代做以下行:替代的document.getElementById()的setAttribute()函数

document.getElementById("btn").setAttribute("onclick", "save(" + id + ");"); 

这条线基本上改变了onclick()事件按钮的喜欢的东西:save(34); , save(35);等。但是它在IE 7和6中失败,但在IE 8和Firefox中工作。

我也可以使用jquery。

+0

不知道,但我认为你是做错了首先。你想达到什么目的?你有这个ID,为什么不在save()方法中获取id而不是以静态方式设置它? – Niyaz 2009-05-04 17:21:14

+0

如果你可以使用jQuery,我认为再也不会使用document.getElementById()了 – 2009-05-04 17:23:33

回答

8

如果你可以使用jQuery的话:

$("#btn").click(function() { save(id); }) 
0

而且这一个:

$("#btn").bind('click', function() { save(id); }); 
10

普通老式的javascript:

var myButton = document.getElementById("btn"); 
myButton.onclick = function() 
{ 
    save(id); //where does id come from? 
} 

的jQuery:

$(function(){ 
    $("#btn").click(function(){ 
    save(id); //where does id come from? 
    });  
});