2013-10-08 55 views
0

我有我的观点一个JQuery的单击事件不会触发

<div class="span12"> 
    <button id="saveButton" class="btn"><i class="icon-download-alt green"></i> Save</button> 
</div> 

和JQuery的一个按钮,单击事件

$("#saveButton").click(function() { 
    alert("Save clicked"); 
}); 

出于某种原因,单击事件从未被触发。 如果我在JQuery事件之前放置警报,则警报成功触发。

我确定我在这里错过了一些非常简单的东西,但我似乎无法找到问题。

我确信,

  • jQuery是成功列入
  • JavaScript文件被成功列入
  • 我用正确的ID为控制

是否有任何理由,这事件没有被触发?

+0

处于初始加载DOM HTML片段?如果没有,那么使用jquery的'.on()'函数。 –

+0

您必须确保在文档加载后声明了click事件侦听器。所以使用jQuery,请参阅文档[这里](http://api.jquery.com/ready/) – Stphane

回答

4

您需要将您的代码放入文档就绪处理程序中。如果没有它,jQuery将尝试在DOM中存在该元素之前附加click事件。

$(function() { 
    $("#saveButton").click(function() { 
     alert("Save clicked"); 
    }); 
}); 
3

试试这个:

$(document).ready(function() { 
    $("#saveButton").click(function() { 
     alert("Save clicked"); 
    }); 
    }); 
+0

谢谢。有效。 – user65439

0

请在这里工作的小提琴:

http://jsfiddle.net/6e2q3/

$(document).ready(function() { 
    $("#saveButton").click(function() { 
     alert("Save clicked"); 
    }); 
}); 
0

这里是工作的代码,

<html> 
    <head> 
     <script src="http://code.jquery.com/jquery-1.9.0.min.js"></script> 
     <script> 
      $(document).ready(function(){ 
       $("#saveButton").click(function() { 
        alert("Save clicked"); 
       }); 
      }); 

     </script> 
    </head> 
    <body> 
     <div class="span12"> 
      <button id="saveButton" class="btn"><i class="icon-download-alt green"></i> Save</button> 
     </div> 
    </body> 
</html> 

JS Fiddle

0
$(function() { 
$("#saveButton").click(function() { 
    alert("Save "); 
}); 

});

希望这将工作