无法使用jQuery添加事件处理函数

时间:2012-03-05 21:06:40

标签: jquery handler

我有以下JavaScript代码,它运行正常 -

var changeImageButton = document.getElementById("changeImageButton");
changeImageButton.onclick = buttonWasClicked;

'buttonWasClicked'是单击“changeImageButton”时调用的JavaScript函数的名称。

现在,我想使用JQuery编写相同的代码。所以我写了 -

 $("#changeImageButton").attr("onclick","buttonWasClicked");

但它不起作用。我做错了什么?

5 个答案:

答案 0 :(得分:4)

您可以使用几种不同的方法来实现这一目标

$("#changeImageButton").click(function(){ do_something(); });

$("#changeImageButton").on("click mouseover", function(){ do_something(); });
//this is useful because you can specify more than one event, if you want to
//(so, this code would also trigger when you move the mouse over - not what
// you want, but just for demonstration purposes)

//In jQuery 1.7+ this is doubly useful, because this will also work with elements
//added _after_ the DOM has initially loaded and this code has run

答案 1 :(得分:2)

jQuery有一个click()方法来分配点击事件。

$("#changeImageButton").click(buttonWasClicked);

答案 2 :(得分:2)

您需要注册一个事件,而不是添加一个属性:

$("#changeImageButton").click(buttonWasClicked);

答案 3 :(得分:1)

试试这个:

$('#changeImageButton').click(buttonWasClicked);

点击的jQuery文档:http://api.jquery.com/click/

答案 4 :(得分:0)

您使用的是哪个版本的jQuery?

这是关于添加事件监听器的jQuery教程:http://api.jquery.com/click/

$("#changeImageButton").click(function() {
  buttonWasClicked();
});