0

我正在尝试渲染一个调用 ajax 函数的部分并将其渲染在一个 div 中。

在下面的代码中,它request.responseText给了我我想要的 html,但为什么这个响应会进入错误函数而不是成功?这似乎很简单,但我在这里遗漏了一些东西。chrome 的检查元素中的后响应状态代码为“200 OK”

js代码:

$.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
4

1 回答 1

2

您正在从服务器发送 HTML,但您已将jQuery.ajax调用配置为期望 JSON。dataType将属性更改为html,它应该可以工作。

于 2013-05-07T17:36:54.823 回答