event.preventDefault()不适用于按钮?

为什么.preventDefault() alert()在我的表单上不起作用甚至是alert()

 
Add new tab

JS代码:

 $(document).ready(function() { $('#myForm').on('submit', function(e) { alert("Thank you for your comment!" + e); e.preventDefault(); }); }); 

我不知道我做错了什么。

更新:

有弹出窗口的链接:

 
  • Tab
  • 引发popover的JS“

     $('#popover').popover({ html : true, title: function() { return $("#popover-head").html(); }, content: function() { return $("#popover-content").html(); } }); 

    jsfiddle: http : //jsfiddle.net/9uYuH/

    使用.on()

    作为bootstrap中的popover生成的动态元素,您无法直接将事件绑定到它们。因此,您必须使用事件委派 。

     $(document).on('submit','#myform', function(e) { alert("Thank you for your comment!" + e); e.preventDefault(); }); 

    或更好地使用

     $('#popover').on('submit','#myform', function(e) { alert("Thank you for your comment!" + e); e.preventDefault(); }); 

    句法

     $( elements ).on( events, selector, data, handler ); 

    由于动态生成bootstrap中的popover,因此应使用以下jquery函数

     $(document).on('submit','#myform', function(e) { alert("Thank you for your comment!" + e); e.preventDefault(); });