代码之家  ›  专栏  ›  技术社区  ›  randombits

jquery:如何为活动绑定修复此语法

  •  0
  • randombits  · 技术社区  · 14 年前

    我好像搞不好。

    我有表格通过xhr来。我需要能够在提交处理程序通过xhr传入后将其附加到它,因此这里是.live()。下面的代码实际上可以工作,问题是发生了XHR HTTP POST(这很好),然后发生了整页HTTP POST加载,这并不好。返回错误;似乎什么都没做。我的后端是Rails,但在这个上下文中这并不意味着什么。我在这段代码中做了什么错误呢?这段代码使HTTP POST在XHR和整页加载中只发生一次?更好的方法?

    $('form[name=clip_form2]').live('submit', function() {
      $.post($(this).attr("action"), $(this).serialize(), null, "script");
      return false;
    });
    

    我的Rails窗体甚至还有一个onSubmit=“return false;”处理程序:

      <% form_for(@clip, :url=>group_channel_clip_path(@clip.group_channel,@clip), :method=>:put, :html => {:multipart => true, :name=>'clip_form2', :onsubmit => "return false;"}) do |f| -%>
    
    1 回复  |  直到 14 年前
        1
  •  0
  •   Logan Bailey    14 年前
    $(document).ready(function(){
        $('form[name=clip_form2]').submit(function(e){
            e.preventDefault();
            $.post($(this.attr('action')), $(this).serialize(), null, 'script');
        });
    });
    

    另外,这是一个非常容易使用的jquery扩展,它通过添加的特性来实现这一点。 http://jquery.malsup.com/form/