jQuery ajax提交里面的live()不能只在Firefox中工作

时间:2011-07-28 20:47:12

标签: jquery

我有以下代码提交表单并将其自身替换为服务器的响应:

  $("form.replaceWithResponse").live("submit", function() {
    event.preventDefault(); // not preventing default form submission in Firefox
    var $this = $(this);
    $.ajax({
      data: $this.serialize(),
      dataType: "html",
      type: $this.attr("method"),
      url: $this.attr("action"),
      success: function(html) {
        $this.replaceWith(html);
      }
    });
  });

它可以在Chrome中使用,但除非我在开​​头使用return false而不是event.preventDefault(),否则它在Firefox中不起作用。为什么呢?

谢谢!

1 个答案:

答案 0 :(得分:0)

您需要传递活动:

$("form.replaceWithResponse").live("submit", function(event) {
    event.preventDefault();