无法在JS文件中调用click事件

时间:2012-01-16 05:13:52

标签: javascript jquery html

以下是html代码:

 <input type="button" id="abc" name="TechSupport_PartsOrder" value="Open Editor" />

以下是JQuery代码:

$('#abc').click(function () {
alert('x');
});

现在,当我把上面的JQuery代码放到JS文件中时它不起作用,而当我把它放在页面中时它工作正常。为什么会这样,我不知道。

如果我按下这个按钮调用按钮功能:

 <input type="button" id="abc" name="TechSupport_PartsOrder" onclick="abc()" value="Open Editor" />

JQuery的:

function abc()
{
 alert('x');
}

效果很好..

3 个答案:

答案 0 :(得分:7)

将代码包装在ready处理程序中:

$(function() {
    $('#abc').click(function() {
        alert('clicked');
    });
});

答案 1 :(得分:1)

在加载DOM之后,您是否确定事件处理程序已定义?这就是为什么jquery建议将所有代码放在

$(document).ready(function(){  
  //XXX code goes here
});

你的事件处理程序可能是在元素加载到DOM之前尝试分配的。

答案 2 :(得分:0)

以下是否解决了这个问题?

$(function(){
  $('#abc').click(function () {
    alert('x');
  });  
})

在将“#abc”添加到DOM

之前,可能会调用您的代码