javascript - 在 rails 中从 Ajax 渲染部分表单

标签 javascript ruby-on-rails ajax

我有一个如下图所示的表格:

Form with partial

然后我想从 ajax 调用中渲染这个部分:来自 .js.erb。但我不知道如何将对象从部分传递给 f。见下图:

如何将对象传递给 f:

file .js.erb

最佳答案

添加 :remote => true 它使按钮异步(Ajax 调用)。

index.html.erb

<%= link_to "Add Journal", new_journal_path, remote: true, class: 'new_journal_button'%>

new.js.erb

$('.new_journal_button').after("<%= j render('form') %>");
$('.new_journal_button').hide();

If you want to submit a form asynchronously(Ajax call)

_form.html.erb

<%= form_for(@journal, remote: true) do |f| %>
  <div class="field">
    <%= f.label "journal" %><br>
    <%= f.text_field :title, placeholder: 'Journal', autofocus: true, 'data-behavior' => 'submit_on_enter' %>
  </div>
<% end %>

Journals_controller.rb

  def index
     @journal = Journal.new
     @journals = Journal.all
  end

  def create
    @journal = Journal.new(journal_params)
    respond_to do |format|
      if @journal.save
        format.html { redirect_to @journal, notice: 'Journal was successfully created.' }
        format.js
      else
        format.html { render :new }
      end
    end
  end

关于javascript - 在 rails 中从 Ajax 渲染部分表单,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/35811435/

相关文章:

javascript - 使用带有动态生成的输入的 form_tag 提交数组

javascript - 如何将我的方法重写为 async/await?

javascript - 如何将按钮连接到预先存在的 jquery 代码

ruby-on-rails - Controller 规范无法找到由我的 Rails 引擎定义的路由

ruby-on-rails - 在 ActiveRecord 中查询第一个与部分属性匹配的对象

PHP 脚本中止,导致 MySQL 事务失败,整个应用程序锁定一会儿

javascript - 在同一个 iframe 上打开 HTTPS 网站

mysql - 尝试连接到 AWS MySQL 实例时 ActiveRecord NoDatabaseError

javascript - 如何使用ajax加载表单

javascript - 如何检查上一次调用的 ajax 函数是否忙