如何触发Uploadify onError事件处理程序?

我正在使用Uploadify上传文件。 问题是,我需要在处理这些文件时告知用户任何错误。

Uploadify有onErroronCompleteonAllComplete事件处理程序,但我不知道如何触发这些事件,以便用户了解正在发生的事情。

我需要发送JSON字符串吗? 这里 , 这里和这里有一个线索,但我不能让它工作。 也许论坛中的post已经过时了。

有人有任何适用于Uploadify 2.1的例子吗?

这让我很伤心,但我找到了办法。 在uploadify.php文件中,我创建了所有validation。 这里的不同之处在于我为每种类型的错误设置了HTTP 4xx代码。

 if (! in_array($fileParts['extension'], $typesArray)) { header("HTTP/1.1 405"); //any 4XX error will work exit(); } 

这会将“405”错误抛回uploadify.js。

在文件中我设置$(“#fileInput”)。uploadify()我添加了“onError”函数。

  'onError' : function(event, ID, fileObj, errorObj) { var r = "
ERROR: "; switch(errorObj.info) { case 405: r += "Invalid file type."; break; case 406: r += "Some other error."; break; } setTimeout('$("#fileInput'+ ID + 'span.percentage").html("'+r+'");',111); }

这会强制uploadify默认函数存在,同时扩展它。

希望这有帮助!

onError位于uploadify的选项中:

 $("#fileInput").uploadify({ onError: function(e, q, f, o) { alert("ERROR: " + o.info); } }); 

来自文档

上载过程中发生错误时触发的函数。 默认事件处理程序将错误消息附加到返回错误的队列项,并将其队列项容器更改为红色。

向函数发送了四个参数:

  • event :事件对象。
  • queueID :返回错误的文件的唯一标识符。
  • fileObj :包含有关所选文件的详细信息的对象。
    • name – 文件的名称
    • size – 文件的大小(以字节为单位)
    • creationDate – 创建文件的日期
    • modificationDate – 文件修改的最后日期
    • type – 以“。”开头的文件扩展名
  • errorObj :包含有关返回错误的详细信息的对象。
    • type – ‘HTTP’,’IO’或’Security’
    • info – 描述返回的错误类型的错误消息
 onError: function (a, b, c, d) { if (d.status == 404) alert('Could not find upload script. Use a path relative to: '+''); else if (d.type === "HTTP") alert('error '+d.type+": "+d.status); else if (d.type ==="File Size") alert(c.name+' '+d.type+' Limit: '+Math.round(d.sizeLimit/1024)+'KB'); else alert('error '+d.type+": "+d.text); },