考慮.erb視圖下執行形式:軌JS回調不與遠程JSON形式(jQuery的UJS)
<%= form_tag(harvester_next_url, :method => "post", :remote => true, "data-type" => :json, :id => "answerForm") do %>
<div id="dynamicFormContent"></div>
<% end %>
在某些情況下,我想問題的next
法 一個JS回調render :js => "window.location = '#{definitions_path}'"
但是,這不會在瀏覽器中執行。響應在主體中具有「window.location ...」並且content-type
設置爲text/javascript
,請求的accept
也具有text/javascript
。
Rails版本是3.2.8。
一些額外的信息:我不想切換表單操作使用JS格式JS代碼回調僅是從控制器可能的反應之一。另一次,我需要一些JSON來處理。
問題:是否有可能使其工作而不使用客戶端重定向(即從JSON響應獲取window.location)等? AFAIK,這適用於非遠程表單。
ADD當XHR完成時,它以status = "parsererror"
結束。顯然,這是因爲jQuery試圖將響應解析爲JSON,即使它是text/javascript
。問題仍然存在。
的一點是,我正在尋找從JSON響應有些不顯眼的方式:)獲取URL將工作正如你所說的,但我想弄清楚什麼是錯用「JS渲染」的方法。這完全不可能嗎?它是一個錯誤還是一個功能? – starteleport