2017-08-02 6 views
1

Ruby on Railsの新機能で、form_forがjQuery関数をトリガーしようとしています。Ruby on Railsでform_forを使ってjQueryをトリガーする

フォームのための私のコードは次です:

<%= form_for @company, :url => create_paying_registration_path(:industry => apt(@plan.industry, :industries), :plan => @plan.name), 
    :html => {:id => "card-form"} do |f| %> 
    <%= render 'form_carrier', :company => @company, :plan => @plan, :f => f %> 
<% end %> 

とjQuery:

jQuery ($) -> 
$("#card-form").submit -> 
$form = $(this) 
$form.find("button").prop "disabled", true 
Conekta.token.create tokenParams, conektaSuccessResponseHandler, conektaErrorResponseHandler 
false 
return 

フォームは、jQueryの機能をトリガしませんが、私はform_tagを使用している場合、それはjQueryのをトリガー関数:

<%= form_tag('/checkouts/charge', id: 'card-form') do %> 

私の質問は何ですか?form_for? jQueryをトリガーして、フォームからパスにリダイレクトする必要があります。

ありがとうございます。

+0

は私にとっては、使用jQueryの構文は奇妙に見えます。しかし、ローカルのサンプルテストのようにプレーンhtmlフォームにこれを適用すると、jqueryコードは機能しますか? – reporter

+0

申し訳ありませんが、jQueryは 'coffeescript'に書かれていることを忘れてしまいます。私はform_tagとプレーンなHTMLフォームを使用しても動作しませんが、form_forでは動作しません。 – rockar06

+0

onSubmit with form_forを使用しようとしましたか? –

答えて

0

をonSubmitが

form_for @paintings, :url => "/paintings/handlelike", :method => "post", :remote => true, :html => {:id => "submit_form_id",:onsubmit => "yourFunction();", :name => 'form'} do |f| 

そして、あなたのJSでのform_forに追加:

yourFunction() { 
$form = ... 
... 
} 
関連する問題