ユーザー作成の変数をサーバーで処理してから、ビューに戻してdivに追加しようとしています。Ajax、Javascript変数、サーバー側変数 -
私の見解使用ERB:
<div id = "times_div"></div>
<script>
function findTimes(current_time){
matched_time = current_time;
$.ajax({
type: "POST",
url: "match_times",
cache: false,
data: matched_time,
success: function(<%= @new_times %>){
$("#times_div").append(<%= @new_times %>);
}
});
};
</script>
私のコントローラ:
def match_times
reduce = Schedule.where(:date => matched_time)
hour_on_time = reduce.collect {|x| x.hour}
@new_times = hour_on_time
end
と私のルート:
match '/match_times', :to => 'appointments#match_times'
が、私は「未定義のローカル変数やメソッドを取得しています ` matched_time 'コントローラがAjax経由で送信された 'data'プロパティを読み取っていないのはなぜですか?あなたがjQuery ajaxを使用している場合
おかげ
'findTimes'を呼び出すコードを追加できますか? – osahyoun
どこにそのエラーがありますか?アヤックスを提出した後、または前に? –
それはajaxが提出された後に起こった。私はコントローラの値になるように、 'matched_time'のparamsキーを宣言する必要がありました。 – EHNole