Php ajaxSubmit错误捕获

Php ajaxSubmit错误捕获,php,ajax,Php,Ajax,我无法让ajaxSubmit捕获错误: $(document).ready(function(){ $("#supportForm").validate({ rules: { //validation }, messages: { //messages },

我无法让ajaxSubmit捕获错误:

$(document).ready(function(){

        $("#supportForm").validate({
              rules: {
                 //validation
              },

              messages: {              
                 //messages
              },

              submitHandler: function(form) {
                    $(form).ajaxSubmit({
                        url:"ajax/supportform",
                        type:"GET",
                        dataType: 'json',
                        error: function() { alert('error'); },
                        success: function() {alert('success'); },


                    });
              }

        });  
    })
我必须在php脚本中返回什么才能让它触发错误事件


我尝试返回一个错误=>0的数组,退出(json_encode('error'=>'0');等等。

编辑:要显示来自PHP的特定错误描述,您应该阅读以下问题:

让你的服务器产生一些错误,用PHP你可以这样做

<?php
header("HTTP/1.0 404 Not Found");
?>

查看标题功能的文档:

您在这里所做的是为您的webbrowser提供不属于典型HTML源的数据,webbrowser通过这些数据知道出现了问题


实际上,您可以将所有需要的元数据添加到网页请求的标题中,但当webbrowser不知道其含义时,它将被忽略。请参阅此处的定义或状态代码:

编辑:要显示来自PHP的特定错误描述,您应该阅读以下问题:

让你的服务器产生一些错误,用PHP你可以这样做

<?php
header("HTTP/1.0 404 Not Found");
?>

查看标题功能的文档:

您在这里所做的是为您的webbrowser提供不属于典型HTML源的数据,webbrowser通过这些数据知道出现了问题


实际上,您可以将所有元数据添加到网页请求的标题中,但当webbrowser不知道其含义时,它将被忽略。请参阅此处的定义或状态代码:

将url更改为不存在的内容以强制出错

          function(form) {
                $(form).ajaxSubmit({
                    url:"ajax/supportform001",
                    type:"GET",
                    dataType: 'json',
                    error: function() { alert('error'); },
                    success: function() {alert('success');} // <-was an extra comma
                });
          }
函数(表单){
$(表格).ajaxSubmit({
url:“ajax/supportform001”,
键入:“获取”,
数据类型:“json”,
错误:函数(){alert('error');},

成功:函数(){alert('success');}/将url更改为不存在的内容以强制执行错误

          function(form) {
                $(form).ajaxSubmit({
                    url:"ajax/supportform001",
                    type:"GET",
                    dataType: 'json',
                    error: function() { alert('error'); },
                    success: function() {alert('success');} // <-was an extra comma
                });
          }
函数(表单){
$(表格).ajaxSubmit({
url:“ajax/supportform001”,
键入:“获取”,
数据类型:“json”,
错误:函数(){alert('error');},

success:function(){alert('success');}/参见Mike de Klerk的链接,它提供了关于如何捕获错误的线索:

似乎成功和错误回调与传递布尔错误/成功消息无关,但只有在成功调用url的情况下。我希望我不会得到错误结果,因为我使用的CMS总是返回某种内容,即使是404或403页面

无论如何,我必须从php脚本返回一个json字符串:

<?php


$response = json_encode(array("error" => "false","message" => "this is the error message"));

return $response;

参见Mike de Klerk的链接,它提供了关于如何捕获错误的线索:

似乎成功和错误回调与传递布尔错误/成功消息无关,但只有在成功调用url的情况下。我希望我不会得到错误结果,因为我使用的CMS总是返回某种内容,即使是404或403页面

无论如何,我必须从php脚本返回一个json字符串:

<?php


$response = json_encode(array("error" => "false","message" => "this is the error message"));

return $response;


将url更改为不存在的内容-这会给您带来错误,让您练习。我不是PHP开发人员,但不会简单地在PHP代码中抛出异常(而不是捕获异常)让ajax调用失败?@Francis Gagnon,这取决于最终的错误处理。一个简单的PHP语法错误或其他东西不会导致ajax调用失败。@mike-正确,我的问题是没有文档定义函数希望返回的内容被视为错误!将url更改为不存在的内容-这我不是一名PHP开发人员,但不会简单地在PHP代码中抛出异常(而不是捕获异常)让ajax调用失败?@Francis Gagnon,这取决于最终的错误处理。一个简单的PHP语法错误或其他东西不会导致ajax调用失败。@mike-正确,我的问题是没有文档定义函数预期返回的错误!+1,对于应用程序错误,500代码将被证明是错误的更恰当的做法是,它在标题中返回404响应,但文档本身中没有数据——ajax请求期望返回数据。(json)官方文档没有帮助&错误回调在任何示例中都没有。@Sean Kimball,我知道你想要一条特定的错误消息,而不仅仅是在某些连接错误或其他问题上尝试错误处理程序?请看编辑是我的回答。@mike-如果我读对了,那么成功的错误与php sc是否正确无关ipt返回了任何特别的东西,但只是返回了一些东西?在这种情况下-?我无法让它在404或500个标题上抛出错误~即使我在脚本中引入了错误或移动了页面。但基本上我应该将json字符串传递回成功回调并在那里“处理”?在这种情况下,在什么情况下甚至有可能触发错误回调吗?@Sean Kimball你在我的简历中读到添加的URL了吗?我很确定这就是你要找的。虽然你最初的问题表明不是这样。因此你得到的答案与你要找的答案不同。一定要问清楚你需要知道/想要什么。+1如果出现错误,500代码可能更合适,尽管它在标题中返回404响应,但文档本身中没有数据-ajax请求期望返回数据。(json)官方文档没有帮助&错误回调在任何示例中都没有。@Sean Kimball,我知道你想要一条特定的错误消息,而不仅仅是在某些连接错误或其他问题上尝试错误处理程序?请看编辑是我的回答。@mike-如果我读对了,那么成功的错误与php sc是否正确无关海归