【发布时间】:2016-02-18 01:05:06
【问题描述】:
我正在尝试在使用 ajax 将参数发送到控制器后呈现视图。由于项目结构,我不得不走这条路,但控制台返回:
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");
}
});
并且我的控制器具有分配给我正在传递的参数的属性。
【问题讨论】:
-
您期待 json 响应吗?也许是javascript响应?我建议在您的 ajax 调用中将 dataType 选项设置为“json”或“script”。这样,您的控制器将知道如何正确响应。目前,它的响应似乎不是您想要的 html。
-
这里有什么问题?我没有看到。
-
@ajporterfield 很抱歉没有更清楚,但我希望页面/yourrate.html.erb 呈现。控制台说它正在渲染它,但是我按下调用 ajax 的按钮的页面没有改变。不确定我是否应该以不同的方式解释?
-
@Toby1Kenobi 我执行此 ajax 调用的页面不会更改为我要渲染的页面,控制台说它正在渲染:page/yourrate.html.erb
标签: jquery ruby-on-rails ajax