Ruby on rails 如何从json请求动态更新Rail字段?
假设Rails应用程序有一辆汽车和一个订单模型。汽车模型包含名称和颜色字段。订单模型包含一个car_id字段和一个color字段,以便用户可以根据需要指定替代颜色 当用户创建新订单时,他们可以从选择字段中选择汽车名称。如何在此事件中使用颜色动态更新文本字段 订单表单包含以下字段:Ruby on rails 如何从json请求动态更新Rail字段?,ruby-on-rails,ajax,json,Ruby On Rails,Ajax,Json,假设Rails应用程序有一辆汽车和一个订单模型。汽车模型包含名称和颜色字段。订单模型包含一个car_id字段和一个color字段,以便用户可以根据需要指定替代颜色 当用户创建新订单时,他们可以从选择字段中选择汽车名称。如何在此事件中使用颜色动态更新文本字段 订单表单包含以下字段: <select id="order_car_id></select> <input id="order_color"></input> 这个函数响应事件并获取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
将值从json数组传递到order_color字段的正确语法是什么?我尝试了$'order_color'.valcar[0]的各种排列;但我似乎不明白
如果有人能给我指出正确的方向并了解它的工作原理,我将不胜感激
谢谢大家! 看起来像是你的成功函数,你没有定义什么是车 您的函数正在传递“数据”,但该函数中没有定义“car” 您需要从数据对象中提取car 首先,将console.logdata添加到success函数中,以便查看数据响应的结构
function(data) {
console.log(data);
//$('#order_color').val(car[0].color);
}
你可能会得到类似的回报:
data:{
car:{
color:"blue"
size:"large"
}
}
了解数据对象的格式后,可以通过以下方式进行访问:
$('#order_color').val(data.car.color);
看看普通更新和新AJAX方法中的参数。有什么不同吗?
$('#order_color').val(data.car.color);