Ruby on rails 将字符串从控制器返回到ajax调用的最佳方法
我想创建一个返回单个字符串值的操作:Ruby on rails 将字符串从控制器返回到ajax调用的最佳方法,ruby-on-rails,ruby-on-rails-3,Ruby On Rails,Ruby On Rails 3,我想创建一个返回单个字符串值的操作: def delay_calulation() dr = Dr.find(params[:id]) delay = dr.calc() respond_to do |format| format.json { render json: {"value" => delay}} end end 但我在ajax调用中遇到了一个“失败”: $("#btn_delay").on("click", function () { $.
def delay_calulation()
dr = Dr.find(params[:id])
delay = dr.calc()
respond_to do |format|
format.json { render json: {"value" => delay}}
end
end
但我在ajax调用中遇到了一个“失败”:
$("#btn_delay").on("click", function () {
$.ajax({
type: "GET",
dataType: "script",
url: "/drs/delay_calulation/1"
})
.done(function(response){
console.log(response);
})
.fail(function(response){
console.log(response);
});
});
如何获取单个字符串或类似的内容。在通过Ajax调用时,需要将id传递给控制器操作。您可以使用控制器中提到的键名来检索字符串
$.ajax({
url: '/drs/delay_calulation',
data: {id: (you need to pass the id)},
type: "get",
dataType: "json",
success: function(data){
var a = data["delay"]
},
failure: function(data){
var a = data["delay"]
}
});
您知道如何将此“1”参数作为数据(如:data{id:1})传递吗?是的,您可以在散列中传递任意数量的以逗号分隔的键和值格式的参数。例子。数据:{id:1}如果我这样做,它会调用“show”操作而不是“delay_calculation”操作。我已经编辑了答案。从URL中删除id。这是文件中声明的顺序。谢谢