2011-03-01 42 views
0

嗨我很熟悉Ruby on Rails,也許這是一些容易的事情,我沒有在書中得到,但我試圖得到一個Ajax的JS響應,我不斷得到HTML。爲什麼我得到html ajax響應而不是javascript? (Ruby on rails)

我的看法如下new.html.erb:

<% form_for(resource, :as => resource_name, 
      :remote => true, :url => registration_path(resource_name)) do |f| %> 
    <%= f.label :name %><br /> 
    <%= f.text_field :name %> 

    <%= f.submit "Sign Up" %> 
<% end %> 

我的控制器:registrations_controller.rb

# POST /resource 
    def create 
    build_resource 

    if resource.save 
     if resource.active? 
     set_flash_message :notice, :signed_up 
     sign_in_and_redirect(resource_name, resource) 
     else 
     set_flash_message :notice, :inactive_signed_up, :reason => resource.inactive_message.to_s 
     expire_session_data_after_sign_in! 
     redirect_to after_inactive_sign_up_path_for(resource) 
     end 
    else 
    clean_up_passwords(resource) 
    respond_to do |format| 
     format.html 
     format.js 
    end 
    end 
    end 

我的application.js部分:

jQuery.ajaxSetup({ 
    'beforeSend': function(xhr) {xhr.setRequestHeader("Accept", "text/javascript")} 
}) 


$(document).ready(function() { 
    $("#user_submit").submit(function() { 
    $.post($(this).attr("action"), $(this).serialize(), null, "script"); 
     return false; 
    }) 
}) 

我創建.js.erb只是一個簡單的

alert('ok'); 

我已覆蓋設計註冊表單和控制器。我一直使用create.html.erb代替create.js.erb

ps:因爲我對RubyonRails相當陌生,歡迎提供任何評論。

回答

0

該代碼沒有錯。我使用了不好的jquery js文件。

相關問題