フォーム内でいくつかの JavaScript を使用して、選択ドロップダウン ボックスから値を取得し、それをフォームの別の部分で使用しようとしています。構文がわかりません。
最初に JavaScript 関数 (ビューの最後に配置しました):
<script type="text/javascript">
function return_event_id()
{
var event_id = document.getElementById("event_id");
return event_id.value;
}
</script>
ビュー内には、次のものがあります。
<%= select("discount_code", :event_id, events_ids_titles_hash, { :include_blank => true }) %>
次のステートメントを追加すると:
return_event_id
次に、選択したドロップダウン項目がフォームに表示されます (ただし、return_event_id という単語も表示されます)。
私がこのようなことをすると:
<% selected_event_id = return_event_id %>
次のエラー メッセージが表示されます: undefined local variable or method `return_event_id'
私が探しているのは、event_id 値を変数に格納できるようにすることです。適切な構文は何ですか?
回答に関する追加の詳細とコメント:
1: はい、Ruby コード = サーバー、JavaScript コード = クライアント
2: コードを application.js のようなものに配置すると、view.erb モジュールから移動されますが、私の知る限り、結果は変わりません。
<% selected_event_id = return_event_id %> が機能しないことは理解していますが、何らかの方法で return_event_id からの出力をサーバーに渡し、それを Ruby 変数にキャプチャできるようにする必要があります。 javascript 関数の出力を使用して、フォーム内の別の要素を設定する方法です。