我正在尝试渲染部分调用ajax函数并将其渲染为div。
在下面的代码中,request.responseText
给了我想要的HTML,但为什么这个响应会进入错误功能而不是成功?
看起来很简单,但我在这里遗漏了一些东西。
chrome的检查元素
js code:
$.ajax({
url: "/upload/get_detail.json",
type: "POST",
dataType: "json",
data: { id: id },
success: function(result) {
$('.some-label').html(result);
},
error: function (request, status, error) {
alert(request.responseText);
}
}).done(function() {
//some code
});
控制器:
def get_detail
@logs = Detail.where('category_id = ?', params[:id].to_i).limit(20)
render :partial => "/category/detail", :layout=> false
end
答案 0 :(得分:2)
您正在从服务器发送HTML,但您已将jQuery.ajax
调用配置为期望JSON。将dataType
属性更改为html
,它应该有效。