我试图用 facebox_render 和 rails 3 做一个简单的测试。
这是我的步骤:
1.) 安装 Jquery 1.4.2 (Jrails)
2.) 安装插件 rails plugin install git://github.com/ihower/facebox_render.git
3.)并添加了以下几行:
在我的 application.html.erb
<head>
<title><%= yield(:title) || "Untitled" %></title>
<%= stylesheet_link_tag "reset", "application", "facebox" %>
<%= javascript_include_tag :defaults, "facebox" %>
<%= csrf_meta_tag %>
<%= yield(:head) %>
</head>
在我的 application_controller
class ApplicationController < ActionController::Base
include FaceboxRender
end
当我试图在facebox中加载一些东西时,我只有加载器,什么都没有出现......
例如,在我的家/index.html.erb
<%= facebox_link_to "test", :url => "/images/rails.png" %>
我很高兴知道我错在哪里,在文档中:
* facebox_link_to helper, it’s will launch loading facebox first, send ajax request second)
* link_to :remote => true, form_for :remote => true …etc Ajax helper (for Rails 3)
所以我想我坚持发送ajax请求..
查看以下帖子后:如何使面部框弹出保持打开状态,提交后面部框内的内容发生变化似乎我有同样的问题:我可以在 yhe firebug 控制台中看到“Ajax 未定义”
但是,我的 js 文件已正确加载:(如源代码所示)
<link href="/stylesheets/reset.css" media="screen" rel="stylesheet" type="text/css">
<link href="/stylesheets/application.css" media="screen" rel="stylesheet" type="text/css">
<link href="/stylesheets/facebox.css" media="screen" rel="stylesheet" type="text/css">
<script src="/javascripts/jquery.min.js" type="text/javascript"></script>
<script src="/javascripts/rails.js" type="text/javascript"></script>
<script src="/javascripts/facebox.js" type="text/javascript"></script>
<script src="/javascripts/application.js" type="text/javascript"></script>
谢谢你的帮助!