2014-01-09 28 views
0

我遵循源代码形式rails3-devise-bootstrap-example以在弹出窗口中获得我的devise-login-page(通常 - 没有AJAX - 正常工作)。Rails + Facebox:弹出式窗口不起作用

当我点击登录链接没有任何反应。日志文件告诉我

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

我自己得到了答案。在assets/javascripts下我必须定义

jQuery -> 
    $('a[rel*=facebox]').facebox() 

# facebox - make modal 

$(document).bind "loading.facebox", -> 
    $(document).unbind "keydown.facebox" 
    $("#facebox_overlay").unbind "click" 

在js.coffee文件中。

相关问题