我的表单出现了一个奇怪的问题:
= simple_form_for([@item, @item_comment], :remote => true, id: "new_item_comment", :url => item_item_comments_path(@item)) do |f|
= f.input :comment, :label => false
= f.submit "Save", :class => "btn_save left"
我认为应该致电:
Started POST "/de-de/items/20150423/item_comments" for 127.0.0.1 at 2015-04-23 12:29:33 +0200
Processing by ItemCommentsController#create as JSON
但我将其视为HTML:
Started POST "/de-de/items/20150423/item_comments" for 127.0.0.1 at 2015-04-23 12:29:33 +0200
Processing by ItemCommentsController#create as HTML
它曾经工作,但没有更改这些部分,它只使用HTML。
有没有人知道如何解决这个问题?
---更新1 ---
我将这些行添加到我的coffeescript中:
$('form[data-remote]').submit (e)->
e.preventDefault()
$.rails.handleRemote $('form[data-remote]')
它有效,但我对这个解决方案并不满意,因为我不知道是什么原因导致了这个问题。
答案 0 :(得分:1)
通常在2个案件中发生在我身上:
remote: true
选项)所以请检查生成的html是否有<form .... data-remote='true'..>
,并检查javaery-ujs(或任何你想要使用的处理程序)是否包含在页面javascripts中。
如果您在此之后仍然遇到麻烦,可以在jquery-ujs
中的某处设置断点