我按照rails3-devise-bootstrap-example的源代码来获取我的设计 - 登录页面(通常 - 没有AJAX - 工作正常)在弹出窗口中。
当我点击登录链接时,没有任何反应。日志文件告诉我
Started GET "/facebox/fb_login" for 127.0.0.1 at 2014-01-09 19:15:0
Processing by FaceboxController#fb_login as JS
Rendered devise/shared/_links.erb (3.0ms)
Rendered devise/sessions/_new.html.erb (1155.0ms)
Rendered facebox/fb_login.js.erb (1251.0ms)
Completed 200 OK in 1509ms (Views: 1508.0ms | ActiveRecord: 0.0ms)
但是没有登录弹出窗口。
以下是 index.html.erb 文件
中的登录链接<%= link_to 'Login', fb_login_path, :remote => true %>
启动 fb_login.js 文件
$.facebox('<%= escape_javascript(render :partial => 'devise/sessions/new') %>')
并且应该打开如下所示的 _new.html.erb :
<%= simple_form_for(resource, :as => resource_name, :url => session_path(resource_name)) do |f| %>
<div class="form-inputs">
<%= f.input :email, :required => false, :autofocus => true %>
<%= f.input :password, :required => false %>
<%= f.input :remember_me, :as => :boolean if devise_mapping.rememberable? %>
</div>
<div class="form-actions">
<%= f.button :submit, "Sign in" %>
</div>
<% end %>
<%= render "devise/shared/links" %>
但事实并非如此。出了什么问题?
答案 0 :(得分:0)
我自己得到了答案。在资产/ javascripts下我必须定义
jQuery ->
$('a[rel*=facebox]').facebox()
# facebox - make modal
$(document).bind "loading.facebox", ->
$(document).unbind "keydown.facebox"
$("#facebox_overlay").unbind "click"
在js.coffee文件中。