我尝试使用ajax将params发送到控制器后渲染视图。由于项目结构,我不得不走这条路线但是控制台返回:
Started POST "/rate" for 127.0.0.1 at 2016-02-17 19:49:42 -0500
Processing by PageController#yourrate as */*
Rendered page/yourrate.html.erb within layouts/application (0.5ms)
Rendered Shared_Templates/_navbar.html.erb (0.5ms)
Rendered Shared_Templates/_footer.html.erb (0.0ms)
Completed 200 OK in 188ms (Views: 187.1ms | ActiveRecord: 0.0ms)
我的ajax电话是:
$.ajax({
url:"rate",
type: "post",
data: "start=" + start + "&finish=" + finish + "&duration=" + duration + "&distance=" + distance,
success: function(){
alert("Saved Successfully, distance: " + distance); //just for testing purposes.
},
error:function(){
alert("Error");
}
});
并且我的控制器具有为其分配了params的属性,我已经通过了。
答案 0 :(得分:0)
ajax的意思是在没有任何页面刷新的情况下执行 ,以便使用ajax来更改视图,您需要将控制器呈现的所有html作为对ajax调用的响应进行传递然后让javascript用从ajax响应中获取的html替换当前页面的内容。