View:
/Modal products
#productModal.modal.fade
.modal-header
%button.close{"data-dismiss" => "modal"} ×
%h3 Add a product to your list
.modal-body
#product_step_1
= form_for(@new_product, :url => products_path, :remote => true, :html =>
{:class => 'form-horizontal'}) do |f|
.inputs
= f.text_field :url, :required => false, :autofocus => true,
placeholder: "the url to the product..."
%br
%br
= f.submit "Add", :class => "btn btn-primary"
#product_step_2{:style => "display:none;"}
controller:
@all_the_urls = "list of urls"
respond_to do |format|
format.js { render :template => 'products/create', :locals =>
{:all_image_urls => @all_image_urls}}
end
create.js.erb
$("#product_step_1").hide();
$("#product_step_2").show();
我遇到了一個問題,要獲取要在我創建的引導程序多步模式嚮導中顯示的數據數組。這個過程是,用戶首先輸入一個url,然後由create動作處理。之後,我正在使用遠程表單通過ajax進行處理。控制器操作命中create.js.erb文件,隱藏表單的第一部分,現在顯示下一部分。在視圖中使用帶有滑軌的ajax
一切都到了這一點工作正常。問題是,在表單的第一部分,變量是由數據(來自用戶放置的)設置的,現在我仍然需要在不再隱藏的表單部分中顯示新數據,來自jquery。儘管在控制器命中respond_to並正確處理create.js.erb之後,變量都從控制器操作中丟失。
我怎樣才能讓這個端到端的變量一直傳遞到隱藏的元素,所以現在隱藏的div沒有暴露出來,我可以在rails視圖中看到它。 (這是所有相同的看法)。
(我正在嘗試與當地人沒有運氣)。
你能爲你特別需要傳遞,並從你的控制器更重要的是清楚了嗎?例如它是你需要的all_image_urls,或new_product,或傳遞給new_product表單的url?如果你澄清了產品目標,而不僅僅是你的代碼目標,你可能會得到一些如何去做的答案,或者如何使用不同的方法。目前還不清楚你真正需要什麼。 – Carl
當然,對不起,如果這不清楚。因此,目標是用戶輸入一個URL,從URL的圖像url的列表放在一起(從nokigiri)。輸入url後,控制器操作將可用的URL列表放在一起,模式中的下一步現在應該顯示每個圖像的可選圖像。我的猜測是這將遍歷變量,並且每個img都會有一個link_to來選擇最終圖像。 – stonep