HTML の select タグを使用したシンプルなドロップダウン メニューがあります。select タグのコードは次のようになります。
<select name="menu_id" id="menu_id">
<option selected="selected" value="1">Dinner</option>
<option value="2">Lunch</option>
</select>
私のmenu.js.coffeeファイルには次のものがあります:
$("select#menu_id").change(-> $(this).closest("form").submit())
これは menu.js になります。
(function() {
$("select#menu_id").change(function() {
return $(this).closest("form").submit();
});
}).call(this);
問題は、選択メニューを変更してもフォームが送信されないことです! 上記の menu.js コードも入力しません (そこにブレークポイントを配置し、メニュー オプションを選択した後に入力することはありません)。
次に、上記の内部をコピー(function() {
して Firebug または Chrome コンソールに貼り付けると、期待どおりに動作し、メニューを変更すると実際にフォームが送信されます。では、選択メニューが変更されたときにフォームを送信できるようにするには、レールに coffeescript コードをどのように記述すればよいでしょうか?
Rails 3.2.8 を使用しています。