加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

ruby-on-rails – (Ruby on Rails)页面标题以text / javascript

发布时间:2020-12-17 01:23:11 所属栏目:百科 来源:网络整理
导读:我正在开发一个Rails应用程序,但是在使用Internet Explorer访问它时发现了一个问题. Firefox和Safari可以显示页面. 通过,当使用Internet Explorer时,在某些页面中它会尝试下载页面,而不是显示它. 我不知道会发生什么. 这是我的application.html.erb的html标
我正在开发一个Rails应用程序,但是在使用Internet Explorer访问它时发现了一个问题.
Firefox和Safari可以显示页面.
通过,当使用Internet Explorer时,在某些页面中它会尝试下载页面,而不是显示它.
我不知道会发生什么.

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

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head id="otzee_header_scripts">
<meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
<title>test site</title>
<meta name="robots" content="index,follow" />
<meta name="description" content="" />
<meta name="keywords" content="" />
<meta name="author" content="NZN - No Zebra Network" />
<link rel="shortcut icon" type="image/x-icon" href="/favicon.ico" />
  <%= stylesheet_link_tag "default.css" %>
  <%= stylesheet_link_tag "#{site_theme}/default",:id => 'theme_change_css' %>
  <%= stylesheet_link_tag "#{site_theme}/toyart.css",:id => 'theme_change_bg_css' %>

<!-- Includes Globais -->
  <%= javascript_include_tag 'jquery' %>
  <%= javascript_include_tag 'jquery-ui' %>
  <%= javascript_include_tag 'jrails' %>
  <%= javascript_include_tag 'games' %>
  <%= javascript_include_tag 'users' %>
  <%= javascript_include_tag 'application' %>
  <%= stylesheet_link_tag 'application' %>
  <%= stylesheet_link_tag 'acts_as_taggable_stylesheet' %>

  <%= yield(:head) %>
<!-- Globais -->

<!--[if lte IE 6]>
<link href="stylesheets/ie6.css" rel="stylesheet" type="text/css" />
<![endif]-->
<script src="http://www.google.com/jsapi"></script>

</head>

但我不认为它与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],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块,你将是金色的.

(有关详细信息,请参阅my answer here)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读