【问题标题】:Bind to remote form complete event绑定到远程表单完成事件
【发布时间】:2013-10-11 21:58:20
【问题描述】:

我正在使用 Nprogress 在我的 Rails 应用程序上显示 ajax 请求的加载状态。我已经完成了使其适用于所有正常的 ajax 调用,但我现在遇到了 rails 远程表单的问题。

我现在使用的绑定在大多数情况下都很好用。

$(document).bind('ajax:before', function(){
  NProgress.start();
}).bind('ajax:complete', function () {
  NProgress.done();
}).bind('ajax:success', function () {
  NProgress.done();
}).bind('ajax:error', function () {
  NProgress.done();
});

我的问题是我的 js 响应正在替换表单以显示错误,这就是导致进度条永远无法完成的原因。

我的问题是是否有任何其他方法可以监听远程调用是否完成,或者是否有一种方法可以在每个远程 js 响应上运行一种后回调。也许某种 js 响应的布局?

我的 js.erb 响应如下所示

$('.add-form').html("<%= j(render partial: 'partial/path') %>");

【问题讨论】:

    标签: javascript ruby-on-rails ruby


    【解决方案1】:

    什么!!!我刚刚用布局解决了我的问题!!!! :D 它们的工作方式与 html 布局相同是有道理的,但我不确定它是否会工作!

    我刚刚创建了一个名为 application.js.erb 的布局,其内容如下:

    <%= yield %>
    NProgress.done();
    

    而且它确实有效!我真的很高兴,因为这正是我所需要的,一种事后回调。

    没有必要改变任何东西。

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2011-09-08
      • 1970-01-01
      • 1970-01-01
      • 1970-01-01
      • 2014-01-28
      • 1970-01-01
      相关资源
      最近更新 更多