2017-03-13 6 views
0

フォームにブートストラップ4モーダルを追加しようとしています。フォームに検証エラーがある場合は、ユーザーがサブミットをクリックした後にそれらのエラーをモーダルに表示する必要があります。Rails AJAXフォームはモーダルエラーを送信します

だから私のフォームは、リモート使用している:new.js.erbコードをされて

def create 
    if @customer.save 
    redirect_to customers_path 
    else 
    if @customer.errors.any? 
     render :new 
    end 
    end 
end 

:、AJAXリクエストを送信する場合はtrueを、そのコントローラの罰金を打つ、と私は私のコントローラに次のコードを使用しています

$('.modal-content').html("<%= j render 'customers/new' %>"); 
$('#modal').modal('show'); 

を次のように今、私が午前問題は、エラーがモーダル上に表示されているということですが、私は今、ページを更新せずにもう一度モーダルを閉じることができません。モーダルを閉じようとすると、コンソールで次のエラーが表示されます。Uncaught Error: Modal is transitioning私が正しい詳細を記入すると、私はフォームを提出して顧客を作成することができ、次にモーダルは終了します。

アイデア?

+0

こんにちは、 '$(document).ready()' jsコードの詳細を含めてください。それはどこにある?あなたはターボリンクを使用していますか? –

答えて

0

成功した場合にのみモーダルを閉じます。失敗した場合は、あなたと同じようにもう一度開く必要はありません$('#modal').modal('show');

このためには、成功/失敗の両方でJSで応答する必要があります。フォーム上にremote: trueを使用している場合、リダイレクトは機能しません。

関連する問題