0

我有一个通过 AJAX 呈现错误的表单。表单正在正确发送远程请求,并且服务器正在返回 javascript:

(function() {
  $("#main").fadeIn(". . .");
}).call(this);

不幸的是,浏览器中实际上没有呈现任何内容。起初我以为js代码一定有错误,但是当我将此代码复制并粘贴到Firebug控制台时,它正确地淡入了新内容。问题似乎是浏览器一开始就没有运行代码。什么可能导致这个问题?

作为参考,这是我的表单标记:

= simple_form_for @user, html: {multipart: true}, remote: true do |f|
  . . .
  .btn.btn--positive = f.submit

这是控制器动作:

def update
  if @user.update(user_params)
    redirect_to @user, notice: t('shared.notices.item_was_successfully_updated', item: @user.name)
  else
    render layout: 'transition.js.coffee', action: 'edit'
  end
end

当更新未验证并且 Rails 运行该行时会发生错误render layout: 'transition.js.coffee', action: 'edit'

4

0 回答 0