RailsアプリにCarモデルとOrderモデルがあるとします。 Carモデルには名前と色のフィールドがあります。 Orderモデルにはcar_idフィールドと色フィールドがあり、必要に応じてユーザーが別の色を指定できるようになっています。jsonリクエストからRailフィールドを動的に更新する方法は?
ユーザーが新しい注文を作成すると、選択フィールドから自動車名を選択できます。このイベントの色でテキストフィールドを動的に更新するにはどうすればいいですか?
注文フォームは、カーショービューが
def show
respond_to do |format|
format.json { render :json => @car.to_json, :status => 200 }
end
end
をJSONに応答フィールド
<select id="order_car_id></select>
<input id="order_color"></input>
が含まれており、この機能は、イベントに応答し、JSON配列をつかみます。
$(function(){
$('#order_car_id').live("change", function(e) {
e.preventDefault();
$.ajax({
url: "/cars/" + $(this).val(),
dataType: "json",
contentType: "application/json; charset=utf-8",
success: function(data) {
$('#order_color').val(car[0].color);
},
error: function(xhr,exception,status) {
//error functions...
}
});
});
});
が、私は
Uncaught ReferenceError: car is not defined
#order_colorフィールドにJSON配列から値を渡すための正しい構文は何ですか
を取得していますか?私は$('#order_color').val(car[0].color);
の様々な順列を試みたが、それを把握しているようではない。
誰かが正しい方向で私を指摘し、これがどのように機能するかを知ることができて感謝します。
ありがとうございました!
:あなたは、データオブジェクトのフォーマットを知ったら
は、あなたがしてアクセスすることができます:あなたはおそらくバックのようなものを得るでしょう
通常のアップデートと新しいAJAXメソッドから取得します。何か違うことはありますか? –