【发布时间】:2013-02-26 03:31:48
【问题描述】:
在我看来af_form.html.erb
我有一个用于触发 ajax 调用的按钮
<%= button_to('update ', {:action => 'update', :thingyid => 314}, :method => :get, :remote => true , :'data-update-target' => 'af_stat' ) %>
<div id="af_stat" >
<h3>Tiltle :
<%= @kk %>
</h3>
有人说我应该有一个名为 _af_form.html.erb 的文件 _af_form.html.erb 应该是什么?
在我的控制器欢迎中,有一个方法
def update
@kk = @kk +1
render :partial => 'af_form', :content_type => 'text/html'
end
我听说有人说...“和 af_form.js.erb 一样”?这不是愚蠢吗?复制两个相同的文件。并且不遵守 DRY 规则。
它不起作用。怎么了。 任何人都可以帮助我。非常感谢。
我只想更改视图 af_form.html.erb 不是 _af_form.html.erb ,我为什么需要 _af_form.html.erb
【问题讨论】:
-
移除控制器上的渲染线并创建一个 update.js.erb 模板。在那个文件中,添加你要执行的js。
-
嗨,你确定在 update.js 中吗?我看到了服务器控制台`Rendered welcome/af.js.erb (0.6ms)`,但是我把
page.replace_html('af_form', render(@kk))放在了js文件中。它也不起作用 -
渲染是因为你的代码。如果您使用的是 rails 3,请键入您自己的 js。您无法再访问 page 变量。
-
有例子吗?似乎一旦页面呈现,变量就不能再改变了?我怎么能在js中做? js能接受新变量吗?
-
我使用 firebug 来捕捉响应
alert(@kk) page.replace_html('af_form', render(@kk))响应没有将 @kk 替换为“我想要的数字”
标签: ruby-on-rails ruby ruby-on-rails-3