これはかなり長い間、私のレールアプリでajaxを使ってきました。どういうわけか、このフォームを送信すると、警告ボックスをトリガーする必要があり、私が言うことができるものから、UJSをRails 3.1で動作させることができません
今# application.js
//= require jquery
//= require jquery_ujs
# the form
= form_for @signup, :url => '/signup', :remote => true do |f|
= f.text_field :email, :class => 'email', :size => 26
= f.submit 'Notify me'
# the controller
def signup # route.rb has 'match '/signup' => 'controller#signup'
respond_to do |format|
format.js
end
end
# view: signup.js.erb
alert('wtf?');
..私は基本的に動作させることはできません私の最初のRails 3.1のアプリで。それはしません。フォーム提出はコントローラアクションに進み、テンプレートをレンダリングします。
Rendered teaser_pages/signup.js.erb (0.1ms)
Completed 200 OK in 8ms (Views: 7.2ms | ActiveRecord: 0.0ms)
jはトリガーされません。私は..
link_to 'click me', '#', :confirm => 'confirmation box!'
をすれば期待通り..itが確認ボックスをトリガするため
UJSヘルパーは(と思う)のにロードされ、機能しています。
どうすればよいですか?見える方向はわかります。
は、 アーウィンありがとうUPDATE:
だから、レールが代わりにtext/javascript
のtext/html
を提供し、ヘッダに間違ったコンテンツタイプを証明しているようです。さらにいくつかのテストの後:私はそれが動作jquery-rails
同じバージョンの新鮮なアプリケーションを実行すると
render :js => "alert('AHAHAHAHA');", :content_type => 'text/javascript'
は、まだコンテンツタイプ
text/html
とヘッダーをレンダリングします。このアプリケーションではありません。
どこを見ているのですか?