2016-05-24 6 views
1

これを行う正しい方法であるかどうかわかりません。私のRailsアプリケーションでは、このようなものがあります。ボタンを押す前にJqueryがコードを実行しています

<input id='foo' type="submit" value=" - Test - "/> 

<script> 
    $(document).ready(function() { 

    $("#foo").click(function() { 
    alert("Clicked Test button"); 
    '<% j @customer.do_something('Test', 'test') %>'; <-- This line is running without user pressing the button. 
    alert("Done"); 
    }); 

</script> 

それはボタンが押されたときに@customerオブジェクトにいくつかのメソッドを呼び出すことは可能ですか?または、これをajax経由で行う必要がありますか?ボタンを押さなくても現在@customer.do_somethingが実行されています。

ボタンを押した後にモデルメソッドを呼び出す正しい方法は何ですか?

+2

javascriptを使用してrailsモデルメソッドを呼び出す場合は、Ajaxを使用する必要があります – Salil

+0

このアクションのコントローラコードとビューコードを表示してください。 –

答えて

1

コンテンツがブラウザに送信される前に、ERB(すなわち、<% %>のもの)がサーバーで実行されます。

クリックした結果として実行する場合は、Ajaxを使用する必要があります。

関連する問題