Javascript jQueryAjax-为什么没有响应?

Javascript jQueryAjax-为什么没有响应?,javascript,ajax,jquery,Javascript,Ajax,Jquery,我已经使用过这个基本的、简化的ajax脚本一百次了,现在我已经绞尽脑汁找出了这次它的错误,为什么没有得到响应: $('#btn-submit').click(function() { var str = $("#form-submit").serialize(); alert(str); //alert pops up $.ajax({ type: "POST", url: "ajax-submit.php", data: str, success: function(msg

我已经使用过这个基本的、简化的ajax脚本一百次了,现在我已经绞尽脑汁找出了这次它的错误,为什么没有得到响应:

$('#btn-submit').click(function() {

var str = $("#form-submit").serialize();
alert(str); //alert pops up

$.ajax({
  type: "POST",
  url: "ajax-submit.php",
  data: str,
  success: function(msg) {
      alert(msg); //does not show
      if(msg==0) {
            alert(0); //does not show
          }
      }
});

alert('i come after ajax'); //alert pops up
});
jQuery文件在这个脚本之前就已经包含了,并且路径是正确的,并且在firebug中没有错误

另外,到ajax-submit.php的路径是正确的,内容是正确的


有人知道为什么这样做不起作用吗?

我终于发现了一个非常愚蠢的错误:我使用type=submit作为按钮,所以每次在调用ajax之前都会提交表单…

在FireBug之类的东西中调试时会发生什么?请求是否已发送到服务器?服务器如何响应?如果请求没有发送,请仔细检查代码,看看它是否达到了这个目的。@david:firebug中的控制台没有说任何东西。。。只是empty@j08691:如前所述,firebug中的控制台什么也没说…@Helmut:也检查net选项卡,然后单击persist,这样您的ajax调用和响应就不会丢失。一旦看到发送的请求,请检查头并仔细检查发送的路径,检查发送的实际数据,并在ajax调用中添加一个错误回调,为了安全起见,开发工具的“网络”选项卡如何?它是否显示发送的请求和返回的任何内容?为了更加一致,您应该使用type=submit,然后绑定[with event.preventDefault]的提交事件,而不仅仅是一个按钮。@moonwave99:哦,谢谢您的提示!将来会考虑这个问题,谢谢!好主意。。但是如果你想提交表格呢?需要不同的按钮吗?您可以在js回调中处理提交。