我卡住了。我已經閱讀了一些關於將javascript放入rails應用程序的最佳實踐的博客文章,並且在「Agile Web Dev With Rails3」聖經中看過 - 仍然無法找到答案。所以我要求它。從.js.erb文件訪問本地視圖的變量
說我有其包含以下代碼的圖(test.erb
):
<%@full_stack.each {|trial|%>
...
<%= button_to "test ajax", {:action => "test", :controller => "verbs", :id => @verb.id}, remote: true, :class => "check"%>
<% } %>
@full_stack
是相應控制器的一個實例變量。現在,我想將這個trial
的東西拿到我的javascript中:我想比較用戶輸入到位於trial
變量中的字符串(比較即將在客戶端進行)。
此方法不起作用。將alert("<%= trial.class %>")
放入test.js.erb會導致通知nil
:javascript部分無法訪問該變量。那麼,是否有可能訪問我在javascript中創建的局部變量?我在這裏看到了一些類似的問題,但沒有一個是完全解釋性的。
我不會驚訝地聽到我的方法是完全錯誤的,我不應該在視圖中創建額外的變量,並且這種比較應該在服務器端而不是客戶端執行。我是編程新手,所以在前面採取正確的方法變得困難。在使用RoR構建Web應用程序時,選擇最佳做法的任何相關鏈接都將有所幫助。謝謝!