我有一個表格有remote => true
。當我第一次提交時,一切正常。Rails 3遠程重新提交動態字段
如果有任何錯誤,我想向此表單添加新字段。我用update.js.erb
做了這個。
問題是,當我重新提交此表單時,結果js文件呈現爲html(即我看到屏幕上的js文件文本)。這是第一次渲染爲js的update.js.erb
文件...
任何想法我失蹤了嗎?
UPDATE: 第一次嘗試,格式爲:
format
=> #<ActionController::MimeResponds::Collector:0xc61711c
@order=[text/javascript],
@responses={text/javascript=>nil}>
在第二次提交的:
format
=> #<ActionController::MimeResponds::Collector:0xceaadec
@order=[],
@responses={}>
我update.js只是基本
$("#checkout_modal").html("<%= escape_javascript(render 'plan_pay_modal')%>");
和plan_pay_modal與原始頁面上的部分相同(如果存在,將顯示新字段的表單)是錯誤的。我也試過只是領域相同的問題)。
對於你的編輯:這是怎麼回事。 js只呈現原始頁面上使用的相同部分 – montrealmike
您是對的,瀏覽器在第二次請求時確實請求了html而不是ajax。我檢查了頁面上的html,並將data-remote設置爲true。看起來像這是一個綁定問題... – montrealmike
必須調查你的HTML瀏覽器檢查元素,並將其與正常:遠程=>真正的形式應該是什麼比較。但我個人會堅持重新渲染這種模式中的相同部分。 –