0

この質問を理解できる方法で尋ねる方法さえわかりません。

基本的に、保存後に js.erb を使用して JavaScript を実行したいと思います。通常の javascript/coffee-script ファイルを使用してフォームを送信しています (すべてのフィールドが正しく入力されている場合、フォームは送信されます。それ以外の場合、フォームは何もせず、エラーが表示されるだけです)。

私のコーヒースクリプトの一部:

fieldCorrectResponse: (fields, response) ->
    if fields == correct
        $('#new_mail')[0].submit()
    else
      $('#mail_error').text('error while filling out form')

私のメールコントローラー:

def create
    @mail = Mail.new(mail_params)

    if @mail.save

      #PERFORM SOME JS USING A JS.ERB
    else
      render :new
    end
END

だから私が本当に求めているのは、コントローラーで js.erb をどのように呼び出すかということだと思います。


以下に私の問題の解決策を書きました..

4

2 に答える 2

0

jsをレンダリングして使用できるはずですcreate.js.erb

してみてください:

# MailsController
def create
    @mail = Mail.new(mail_params)

    if @mail.save
      respond_to do |format| 
        format.js
      end
    else
      render :new
    end
END

次に、JavaScript を に実装しますapp/views/mails/create.js.erb

于 2013-08-15T02:07:45.257 に答える