3

嗨,我正在使用 Jquery 选择器“:按钮”,但不能与点击事件结合使用....

$(":button").click(function () {
   alert("click");
   return false;
});
4

3 回答 3

4

确保将代码放入 jQuery 文档就绪函数中:

$(function(){

   /** YOUR CODE **/
   $(":button").click(function () {
       alert("click");
       return false;
   });

});

但正如我从您对 OP 的评论中看到的那样,您实际上可能想要这样做:

$(function(){

   /** YOUR CODE **/
   $(":submit").click(function () {
       alert("click");
       return false;
   });

});
于 2012-07-09T16:30:56.733 回答
3

您可能有以下问题;

  • 可能会忘记在您的代码中添加 jQuery 库

  • 可能是你忘记了$(document).ready()包装,即

    $(document).ready(function() {
      // place all jquery code here
      $(':button').on('click', function() {
         alert('click');
         return false;
      });
    });
    
  • :button可以动态添加到 DOM 中,即在页面加载之后

    在这种情况下,您应该尝试:

    $('body').on('click', ':button', function() {
      alert('Click');
      return false;
    });
    

根据你上面的评论

你可以试试这个:

$('input[type=submit]').on('click', function() {
   alert('click');
   return false;
});

或者

$('input[type=submit]').on('click', function(e) {
   alert('click');
   e.preventDefault();
});
于 2012-07-09T16:31:16.013 回答
2

jQuery 的:button选择器等价于$('button, input[type="button"]'). 因此,它与您的控件不匹配:<input type="submit" value="Create" />.

尝试$('input[type="submit"]')改用(您可以使用$(':submit'),但[type="submit"]可能更快)。

于 2012-07-09T16:34:38.750 回答