(Ruby on Rails)页面标题以text / javascript的forms出现,当它不应该时

我正在开发一个Rails应用程序,但是在使用Internet Explorer访问它时发现了一个问题。 Firefox和Safari可以显示页面。 通过,当使用Internet Explorer时,在某些页面中它会尝试下载页面,而不是显示它。 我不知道会发生什么。

这是我的application.html.erb的html标题:

    test site        'theme_change_css' %>  'theme_change_bg_css' %>               

但我不认为它与application.html.erb有关,因为有些页面显示正常,而其他页面则由ie下载。

有什么可能导致这个问题的线索吗? 或者如何解决?

先感谢您

UPDATE

我现在知道这与标题有关,它发送为mime内容类型text / javascript而不是text / html。 但我不知道为什么。 这是控制器代码,万一有人可以指出我的错误,请。

 def index respond_to do |format| format.js do if params[:bookmarks] != 0 @games_infos = current_user.games_info_bookmarks params[:page], 8 @bookmarks = 1 else @games_infos = current_user.games_info_collection params[:page], false, 8 @bookmarks = 0 end end format.html do @invites = current_user.friends_pending @whats_new = WhatsNew.find_user_network_updates @me, 1, 13 @games_infos = @me.games_info_bookmarks params[:page], 8 @bookmarks = @games_infos.size @games_infos = @me.games_info_collection(params[:page], false, 8) unless @bookmarks > 0 @friends = @me.friends_on_off @high_scores = @me.high_scores end end end 

Obs:firebug显示Content-Type text / html; firefox上的charset = utf-8,Fiddler显示Content-Type text / javascript; Internet Explorer上的charset = utf-8。

我总是把format.html放在第一位。 这样,当IE发送一个奇怪的接受标头,比如“ / ”时,它将呈现它命中的第一个。 在你的情况下,IE说它正在寻找任何东西,所以你发送它js。 首先放置你的format.html块,你将是金色的。

(有关详细信息,请参阅我的答案 )

您的网页可能包含错误的MIME类型。

查看Fiddler中的响应并检查MIME类型。

要在IE中正常工作,您应该使用MIME类型的text/html