在控制器到AJAX请求的响应以下:导轨AJAX(JSON)响应重新加载
@response = {resp: "ack"}
render json: @response
JS,其处理AJAX是:
$('#some_btn').click(function() {
var valuesToSubmit = $('#some_form').serialize();
var url = $('#some_form').attr('action');
console.log("VALUE: " + valuesToSubmit);
console.log("URL: " + search_url);
$.ajax({
type: 'POST',
url: url, //sumbits it to the given url of the form
data: valuesToSubmit,
dataType: "JSON",
success: function(data) {
console.log("saved");
console.log(data);
}
});
return false;
});
但问题是,我不要获取控制台消息,而是重新加载页面,并在新页面上获取json作为文本。如何防止这种“非真正的AJAX”行为?
尝试使用dataType:“json”而不是“JSON” – techvineet
您确实触发了ajax请求吗? – apneadiving
在$ .ajax调用之前,您是否至少获得了前两个控制台消息?根据您的rails日志,它是否会转向您期望的控制器和操作?你是否使用类似Firebug的方式检查了请求和响应的标题,并将它们与工作的AJAX请求中使用的标题进行了比较? – sockmonk