【问题标题】:Rails 4 form remote update div issueRails 4 表单远程更新 div 问题
【发布时间】:2013-07-31 13:41:17
【问题描述】:

在使用 Rails 4 提交表单后,我在更新 div 时遇到了一些问题。这是我的代码的相关部分:

查看:

_details.html.haml

= form_tag(url_for(save_answer_path(format: :js)), remote: true) do
 (some html code ....)
 = submit_tag t('app.bouton.send'), id: 'sendButton'

%div#divlogs
 = render partial: 'logs'

控制器:

def save_answer
 some code ...

  respond_to do |format|
    format.js
  end
end

JS:

save_answer.js.erb

$('#divlogs').html("<%= escape_javascript(render partial: 'logs') %>");

当我提交时,一切都被正确调用,但我得到一个不正确的输出。我想要的是更新我的 div,但我得到一个页面,其中包含我的 JS 文件中的内容,但包含我的部分内容。

示例:

提交后我的网址:

http://domaine/controller/save_answer.js

我在屏幕上看到的内容:

$('#divlogs').html("<p>This should appear on the div </p>");

有人知道怎么回事吗?

【问题讨论】:

  • 你试过form_tag(save_answer_path, remote: true)。应该够了
  • 您还应该检查是否使用了 rails.js(检查页面源)
  • 感谢您的回答。是的,我尝试了很多方法,但出现错误:ActionController::UnknownFormat (ActionController::UnknownFormat):
  • @VladKhomich 没有 rails.js 的踪迹。我会做必要的。
  • @VladKhomich 非常感谢,就是这样!你能写一个答案让我验证吗?

标签: ruby forms tags ruby-on-rails-4


【解决方案1】:

解决方案:

正如@VladKhomich 在上面的 cmets 中所说,我缺少 JS 文件 rails.js。

您可以从这里下载:https://github.com/rails/jquery-ujs/blob/master/src/rails.js

【讨论】:

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