Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/84.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 呈现.json.erb模板时不调用jQuery.done_Javascript_Jquery_Ruby On Rails_Json_Ruby - Fatal编程技术网

Javascript 呈现.json.erb模板时不调用jQuery.done

Javascript 呈现.json.erb模板时不调用jQuery.done,javascript,jquery,ruby-on-rails,json,ruby,Javascript,Jquery,Ruby On Rails,Json,Ruby,我试图通过将响应从create移动到一个视图来清理代码(使用了一些帮助程序,这很有意义)。然而,由于某些原因,我的js回调从未被调用。我100%的困惑,所以这里是我的日志和代码。非常感谢:-) 查看\u controller.rb libraries.js(加载到第页) create.json.erb 来自chrome网络日志中服务器的响应 在行定义之前添加“,并将.html\u safe添加到json { "review": <%= @review.to_json(only: [

我试图通过将响应从create移动到一个视图来清理代码(使用了一些帮助程序,这很有意义)。然而,由于某些原因,我的js回调从未被调用。我100%的困惑,所以这里是我的日志和代码。非常感谢:-)

查看\u controller.rb libraries.js(加载到第页) create.json.erb 来自chrome网络日志中服务器的响应 在行定义之前添加
,并将
.html\u safe
添加到json

{
    "review": <%= @review.to_json(only: [:comment, :rating]).html_safe %>,
    "average_rating": <%= number_to_human(@library.average_rating) %>
}
{
“审查”:,
“平均_评级”:
}

您在网络控制台上得到的响应是什么?要显示的已编辑的答案。它似乎返回了正确的数据,但
。完成后将不会调用:-(这是无效的JSON不应该仍然调用
done
吗?很可能它正试图将其解析为JSON,但它失败了,因此不会调用
done
,而
fail
是无效的。
$(document).ready( function(){
    $("#new_review").submit(function(event) {
        event.preventDefault();

        var form = $(this);

        var values = form.serialize();
        var url = form.attr("action");
        debugger;
        $.post(url + ".json", values).done(function(data) {
            debugger;
        });
    });
});
{
    review: <%= @review.to_json %>, 
    average_rating: <%= number_to_human(@library.average_rating) %>
}
Started POST "/libraries/10/reviews.json" for 127.0.0.1 at 2017-07-16 10:12:18 -0400
Processing by ReviewsController#create as JSON
  Parameters: {"utf8"=>"✓", "authenticity_token"=>"MgB1pj2lQNMgPCknUMP+lc2EWtrp06n1GkaAbrJONJwM//fmY7gI8azvy3IFh9NZfoRysoiVln3vAH+AFzW1QQ==", "review_rating_dispaly"=>"1", "review"=>{"rating"=>"1", "comment"=>""}, "library_id"=>"10"}
  Library Load (0.2ms)  SELECT  "libraries".* FROM "libraries" WHERE "libraries"."id" = ? LIMIT 1  [["id", 10]]
  User Load (0.1ms)  SELECT  "users".* FROM "users" WHERE "users"."id" = ?  ORDER BY "users"."id" ASC LIMIT 1  [["id", 1]]
   (0.1ms)  begin transaction
  SQL (0.3ms)  INSERT INTO "reviews" ("comment", "library_id", "user_id", "created_at", "updated_at") VALUES (?, ?, ?, ?, ?)  [["comment", ""], ["library_id", 10], ["user_id", 1], ["created_at", "2017-07-16 14:12:18.075609"], ["updated_at", "2017-07-16 14:12:18.075609"]]
   (5.6ms)  commit transaction
   (0.1ms)  SELECT AVG("reviews"."rating") FROM "reviews" WHERE "reviews"."library_id" = ?  [["library_id", 10]]
  Rendered reviews/create.json.erb (1.8ms)
Completed 200 OK in 16ms (Views: 4.2ms | ActiveRecord: 6.4ms)
{
    review: {&quot;id&quot;:37,&quot;rating&quot;:1,&quot;user_id&quot;:1,&quot;library_id&quot;:10,&quot;comment&quot;:&quot;&quot;,&quot;created_at&quot;:&quot;2017-07-16T14:23:25.213Z&quot;,&quot;updated_at&quot;:&quot;2017-07-16T14:23:25.213Z&quot;}, 
    average_rating: 1.86
}
{
    "review": <%= @review.to_json(only: [:comment, :rating]).html_safe %>,
    "average_rating": <%= number_to_human(@library.average_rating) %>
}