回调没有从jQuery帖子执行

jac*_*ekn 6 jquery post callback

我在执行回调功能时遇到问题.

$.post("/" + contentId + "/postComment", {
    "postComment": ""
}, function(data) {
    alert('call back');
});
Run Code Online (Sandbox Code Playgroud)

这篇文章确实发生了.但是,不会调用警报.

这篇文章导致一些xml返回.我不能告诉它究竟是如何看,因为我使用的是春天的映射application/xml一起@RequestBody,我只是不知道该怎么做春到什么,我回来了.我这样说是为了防止服务器响应的内容以某种方式影响回叫.

问题是:

在我的代码示例中,我需要做些什么来查看该警报?

T.J*_*der 23

你的代码很好,除了它没有挂钩错误处理程序(我不喜欢的原因之一$.post).我认为POST操作必然会导致错误.尝试将其转换为:

$.ajax({
  type:    "POST",
  url:     "/"+contentId+"/postComment",
  data:    {"postComment":""},
  success: function(data) {
        alert('call back');
  },
  // vvv---- This is the new bit
  error:   function(jqXHR, textStatus, errorThrown) {
        alert("Error, status = " + textStatus + ", " +
              "error thrown: " + errorThrown
        );
  }
});
Run Code Online (Sandbox Code Playgroud)

...所以你可以看到错误是什么.


Con*_*ing 6

有一个类似的问题,当您提供字符串作为数据并且服务器返回 JSON 响应时,回调不会触发。要解决这个问题,只需明确指定数据类型为 JSON:

function update_qty(variant_id, qty){
  $.post('/cart/update.js', "updates["+variant_id+"]="+qty, function(data){
    updateCartDesc(data);
  }, "json");
}
Run Code Online (Sandbox Code Playgroud)