我打算使用以下代码替换名为“activitypage”的部分网页,但我得到了一个文件下载窗口,其中显示消息“您要保存文件还是要查找要打开的程序”。 为什么?谢谢,
render :update do |page|
page.replace_html ('activitypage', :partial => 'index')
end
return
编辑:
诺埃尔,谢谢你的回复。我希望这是全貌。在客户端页面中有一个提交按钮,如此定义,
<div class="form_row">
<% form_remote_tag :url => {:controller => '/group', :action => 'add'},
:html => {:action => {:controller => '/group', :action => 'add'}} do %>
<%= submit_tag "Add!", :class => "submit" %>
&lt;%end%&gt;
在Add of controller group功能中,我有代码
def add
//add the member into the group table
//then go back to the /group/index page
//which will replace the content in webPage "activitypage"
render :update do |page|
page.replace_html ('activitypage', :partial => 'index')
end
return
end
在后端,控制器:action(here / group / add)按预期工作,但在客户端浏览器中,弹出了一个文件下载窗口以保存或打开文件?
我很困惑!??????
答案 0 :(得分:0)
你怎么称呼这个? 它可能是客户端代码中的问题。 如果它被Ajax.request调用,那么您可能需要将evalJS选项设置为true。
或者尝试:content_type =&gt;你的page.replace_html电话中的'text / javascript'。
编辑---&gt;
刚看了remote_form_for的文档,我想你可以通过采用略有不同的方法取得一些成功。
如果您的控制器直接
render :partial => 'index'
并将以下选项添加到远程表单标记
:update => "activitypage"
但这并没有真正回答你原来的问题。我建议使用WireShark或FireFox的Tamper Data插件仔细查看响应头(不确定Tamper Data是否显示对ajax请求的响应)。我可能会对content_type或处置标题出错。它可能与您的服务器配置有关。
(我讨厌这些应该“正常工作”的问题。)