嗨,目前我正在将我的项目从 rails 3.2 升级到 rails 4。升级到导轨 4 后。 page.replace_html
方法不是工作属性。
例如:
在控制器中,如果遇到这样的代码,
渲染:更新执行 |页面|
page.replace_html "lease_container",:p artial => "/lease/property_pipeline", :locals => {:note_collection => @note}
结束
它抛出这样的错误,
操作视图::缺少模板(缺少模板租赁/更新, application/update with {:locale=>[:en], :formats=>[:js, :html, :xml, :html, :text, :js, :css, :ics, :csv, :p ng, :jpeg, :gif, :bmp, :tiff, :mpeg, :xml, :rss, :atom, :yaml, :multipart_form, :url_encoded_form, :json, :p df, :zip], :handlers=>[:erb, :builder, :raw, :ruby, :rjs]}
我该如何解决这个问题?有没有其他方法可以用jquery做到这一点?
使用 prototype-rails helper gem
更好的是,重构代码以使用 jQuery。Rails现在鼓励UJS(Un Obtrusive JavaScript)。因此,jQuery中的精确替换语法可能不是可取的。
你可以尝试这样的东西
$("#divid").html("<div>all the html goes here</div>")
这会将<div id="divid">....</div>
的内容替换为传递到.html("....")
以下是 jQuery 文档.html()
这个主题有一个很好的 RailsCasts 第 #205 集