控制器:紅寶石,如果條件不正常工作的JavaScript文件
def AjaxView
@vars= Var.find(:all,:conditions => { :varName=> "one" },:select=>(params[:col]))
@col = params[:col]
respond_to do |format|
format.js { render :layout=>false }
end
end
AjaxView.js.erb
if('<%= @col %>' == 'colName'){
$("#3").text("<%= escape_javascript(render(:partial => "var")) %>");
} else if('<%= @col %>' == 'colName2'){
$("#2").text("<%= escape_javascript(render(:partial => "var1")) %>");
}
查看部分:
_var.html.erb
<%= @vars[0].colName %>
_var1.html.erb
<%= @vars[0].colName2 %>
如果我這個代碼
$("#3").text("<%= escape_javascript(render(:partial => "var") %>");
更改爲警報( 「hi_one」);和
$("#2").text("<%= escape_javascript(render(:partial => "var1") %>");
到警報( 「hi_two」);
它工作正常。
但是當我把上面的代碼,它每次都運行代碼,不知道爲什麼,它編譯它或什麼?什麼是出路?
渲染輸出:
渲染測試/ _var.html.erb(16.0ms) 渲染測試/ AjaxView.js.erb(19.0ms) 完成在38MS
的ActionView 500內部服務器錯誤: :模板::錯誤(丟失屬性:COLNAME): 1:<%= @瓦爾[0] .COL%>
螢火蟲Javascripty輸出是500錯誤
DOM元素ID不能是數字並且是有效的HTML。 – 2012-01-03 13:18:26
大衛,我改變了它,但我仍然得到同樣的問題 – 2012-01-03 13:36:29
它呈現什麼? – 2012-01-03 13:44:15