0

嗨,目前我正在做一个 Rails 项目。我必须重新加载部分页面。

例如创建动作

 def create
    # Some transaction to the database 
   respond_to do |format|
     format.html {render :text => 'Add post' }
     format.js
   end
  end

在我看来posts/create.js.rjs 我想重新加载users/_login.html.erb 文件这包含帖子的总数或帖子的大小,当它创建一个新帖子时,它应该重新加载部分页面_login。 html.erb 并显示帖子增加的大小

在 create.js.rjs 中,如果我使用page.reload 它会重新加载整个页面,如何仅在 create.js.rjs 中重新加载部分文件 _login.html.erb。

4

2 回答 2

5

代码将如下所示:

  page.replace_html "login-block-id", :partial => "users/login"

其中 login-block-id 是包装您的登录模板的元素的 id

请注意,它replace_html可以接受与 render 相同的参数。

于 2009-09-03T07:53:46.980 回答
2

哟也可以试试

page[:my_div].replace :partial => "/users/login"  

其中 my_div 是包装您的登录模板的元素的 ID

于 2009-09-03T08:01:05.263 回答