jquery绑定事件不生效的解决方法

  今天在开发前台页面时发现jquery绑定click事件,怎么都不生效。代码如下:

  1.html:<input id="ceshisub" type="button" value="单击事件" >

  2.html引用的test.js中的方法函数:

  

复制代码 代码如下:

  $("#ceshisub").bind("click",function(){

  var a=1;

  a +=1;

  alert("ceshisub");

  });

  出现的问题就是在页面中点解“单击事件”按钮没有任何反应,打开js调试窗口在var a=1;这一行打的断点没有进来。

  解决的办法是:

  一、在上述js函数上添加加载事件:

  添加后的代码如下:

  

复制代码 代码如下:

  $(function(){

  $("#ceshisub").bind("click",function(){

  var a=1;

  a +=1;

  alert("ceshisub");

  });

  });

  这样的话,绑定事件就生效了。

  js的加载函数共有三个,除了上述的

  

复制代码 代码如下:

  $(function(){

  alert("第1种方法。");

  });

  还有以下两个方法:

  

复制代码 代码如下:

  window.onload=function(){

  alert("第2种方法。");

  }

  $(document).ready(function(){

  alert("第3种方法。");

  });

  二、如果不采用js加载函数来对绑定事件进行初始化的话还有一个方法:

  将引用js的语句

  <script language="javascript" src="/js/test.js"></script>

  放到页面的最后面进行加载。

  总结:

  jquery在元素上A绑定事件时,首先会在docment中查找该元素A,如果没有找到则绑定失败。

  上面第一个解决方式是在页面初始化后,在初始化js时在进行绑定

  第二个方式就是先要保证页面元素都初始化完成后,在去进行绑定,这时所有的元素都已将初始化完成,肯定能绑定上。