0

我有一个奇怪的问题。真的太奇怪了,打不出来,但就这样。基本上我有一个控制器拒绝使用javascript“respond_to”,除非我在“respond_to”块之前将我的“chart.generate_xml”分配给一个变量,如下所示:

  @xml = @chart.generate_xml(@begin_date,@end_date,1.hour)
  respond_to do |format|
    format.html
    format.js{
      render :update do |page|
        page.insert_html :bottom, "chart-div", @xml
        #page.insert_html :bottom, "chart-div", @chart.generate_xml(@begin_date,@end_date,1.hour)
      end
    }

如果我删除上面的“@xml= ...”部分并使用下面的“page.insert”,则不会调用“format.js”部分。如果我尝试使用“request.format = :js”强制格式,我会得到作为文本返回的 javascript。我在该方法调用中没有做任何特别的事情,所以我不确定它为什么会选择不同的响应。

FWIW,触发此控制器操作的方法是使用 JS 来执行此操作,所以我对为什么不总是调用“format.js”感到困惑。想法?

最好的。

4

1 回答 1

0

这可能是您的 config/routes.rb 文件中的问题,因为这会与格式混淆。

你能发布这个文件和 curl/wget 的结果的标题吗?

于 2010-04-28T02:26:08.863 回答