post完成时jquery返回parsererror

post完成时jquery返回parsererror,jquery,ajax,json,cakephp,Jquery,Ajax,Json,Cakephp,我在我的js文件中写了这个,以构建一个图像上传服务。我可以成功上传图像,但我一直收到解析器错误,因此我无法进一步。 我希望有人能帮我。测试代码如下: $(function () { $("#fileupload").wrap("<form id='myupload' action='/account/qacenter/post_images' method='post' enctype='multipart/form-data'></form>"); $

我在我的js文件中写了这个,以构建一个图像上传服务。我可以成功上传图像,但我一直收到解析器错误,因此我无法进一步。 我希望有人能帮我。测试代码如下:

$(function () {

    $("#fileupload").wrap("<form id='myupload' action='/account/qacenter/post_images' method='post' enctype='multipart/form-data'></form>");
    $("#fileupload").change(function(){
        $("#myupload").ajaxSubmit({
            dataType:  'json',
            data: "{}",
            type: "post",
            timeout: 30000,
            beforeSend: function() {

             //doing something before send the file
            },
            uploadProgress: function(event, position, total, percentComplete) {
             //doing something during the process
            },
            success: function(data) {
             //doing something when post succeed
            },
            complete: function(xhr,msg){

             //doing something when action complete
            },
             error: function(XMLHttpRequest, textStatus, errorThrown) {   
                    alert(XMLHttpRequest.status);  
                    alert(XMLHttpRequest.readyState);  
                    alert(textStatus);  
              //doing something when error occurs.
            }
        });
    });
});

severI刚发布操作代码时返回的值是多少。请检查一下。谢谢。看起来不错,不是PHP的人,所以不是100%确定。。。您是否可以使用浏览器的“网络”选项卡检查请求/响应,并查看其中的内容response@FrankLee:我认为您无法获得正确的json。该页应已抛出错误。请转到浏览器控制台/网络选项卡,检查您发送的请求的响应。
    function post_images()
    {
        $this->autoRender=false;
        $uptypes=array(
            '.JPG',
            '.JPEG',
            '.PNG',
            '.PJPEG',
            '.GIF',
            '.BMP',
            '.X-PNG'
        );
        $picname = $_FILES['image_uploader']['name'];
        $picsize = $_FILES['image_uploader']['size'];
        if ($picname != "") {
            if ($picsize > 1024000) {
                echo "image size must less than 1M";
                exit;
            }
            $type = strtoupper(strstr($picname, '.'));
            if (!in_array($type, $uptypes)){
                echo "wrong image type";
                exit;
            }
            $rand = rand(100, 999);
            $pics = date("YmdHis") . $rand . $type;
            //upload path
            $pic_path = "C:/xampp/htdocs/youyisi/webroot/files/". $pics;
            move_uploaded_file($_FILES['image_uploader']['tmp_name'], $pic_path);
        }

    $size = round($picsize/1024,2);
    $arr = array(
        'name'=>$picname,
        'pic'=>$pics,
        'size'=>$size
    );
    echo json_encode($arr);
}