form タグの外側にある送信トリガーを使用して Rails フォームを送信しようとしています。だから私は私のフォームを持っています:
<% remote_form_for Package.new,
:url => { :action => :rate_shop, :ids_sales_order_id => params[:ids_sales_order_id],
:id => @shipment.id }, :loading => '$("#loading").overlay({api: true}).load(); ' + visual_effect(:appear, 'priceShopInProgress'),
:complete => visual_effect(:fade, 'priceShopInProgress', :duration => 2),
:update => 'itemSelection' do |f| %>
そして、私は私のjQueryを持っています:
$('#priceSelectSubmit').click(function() {
$('#new_item').submit();
});
そして私のトリガー:
<%= submit_tag :Submit, :value => 'Select item', :id => 'priceSelectSubmit', :name => 'priceSelectSubmit' %>
これが取引です。送信ボタンはフォームを正しく送信します (そしてすべての適切なデータを含む新しいページをロードします) が、ボタンがフォームタグ内にある場合のようにフォームを起動しません (特に :loading は非常に重要です)。そのAJAX応答とロードするオーバーレイなどが必要です。
私の制約:
- Rails で jQuery を使用する必要がある
- 送信ボタンはフォーム内に配置できません
- 私はこれのメイン プログラマーではないので (彼は atm を使用していません)、フォームを正しく起動するために jquery を微調整するだけなのか、それとも「アクション」のものを移動する必要があるのか わかりません。 form タグを jquery 関数に挿入します。何かご意見は?非常に感謝しています!