7

我正在使用 jquery ajax fileupload。该文件已正确上传,但我收到类似错误

TypeError: jQuery.handleError is not a function
[Break On This Error]   

jQuery.handleError(s, xml, status, e); 

使用 jQuery 版本 1.7.2,代码是

jQuery.ajaxFileUpload
        (
            {
                url:'<?php echo $currenturl.'&fileupload=enable';?>',
                secureuri:false,
                fileElementId:'fileToUpload',
                dataType: 'json',
                data:{'image_desc':image_desc,'gallery_id':curr_time_stamp},
                success: function (data, status)
                {   

                     if(typeof(data.error) != 'undefined')
                    {
                        if(data.error != '')
                        {
                            alert(data.error);
                        }else
                        {
                            alert(data.msg);
                            showprofilepicture();
                        }
                    }
                }

            }
        ) 

函数 showprofilepicture() 也没有执行。

4

2 回答 2

26

jQuery.handleError 在 1.5 中的 jQuery 版本之后被删除,您需要编写一个自定义错误处理函数来解决这个问题

jQuery.extend({
    handleError: function( s, xhr, status, e ) {
        // If a local callback was specified, fire it
        if ( s.error )
            s.error( xhr, status, e );
        // If we have some XML response text (e.g. from an AJAX call) then log it in the console
        else if(xhr.responseText)
            console.log(xhr.responseText);
    }
});

参考博客。感谢 John Main 提供的信息

于 2012-10-29T04:31:27.517 回答
0
             if(typeof(data.error) != 'undefined')
            {
                if(data.error != '')
                {
                    alert(data.error);
                }else
                {
                    alert(data.msg);
                    showprofilepicture();
                }
            }

应该

jQuery.ajaxFileUpload({
            url:'<?php echo $currenturl."&fileupload=enable";?>',
            secureuri:false,
            fileElementId:'fileToUpload',
            dataType: 'json',
            data:{'image_desc':image_desc,'gallery_id':curr_time_stamp},
            success: function (data, status)
            {   

                 if(typeof(data.error) != 'undefined')
                {
                    if(data.error != '')
                    {
                        alert(data.error);
                    }
                }else
                    {
                        alert(data.msg);
                        showprofilepicture();
                    }
            }

        }
    ) 
于 2012-10-28T09:00:02.897 回答