Json 处理IE并且它不';不能处理文件大小等
我正在使用带有jQuery包装器的v3.9 UI: 现在我已经解决了IE9中的“超过最大请求长度”错误(从这里: ).我所有的FineUploader代码都在这另一个链接中,我想我不需要再发布了 我现在正在寻找一种更好的方法,让IE用户知道他们何时尝试上载过大的文件(Chrome、FF用户收到过大文件警报,所以这不是问题)。我不认为我需要搞乱“messages”选项,因为它们在所有其他浏览器上都正常工作。这是因为它没有发挥应有的作用!IE用户将使用他们选择的文件一直访问服务器。为了处理上传超过fileSize属性的文件,我在服务器端有代码检查内容长度>'n',如果是,则返回JSON success=false。见下文:Json 处理IE并且它不';不能处理文件大小等,json,browser,error-handling,fine-uploader,Json,Browser,Error Handling,Fine Uploader,我正在使用带有jQuery包装器的v3.9 UI: 现在我已经解决了IE9中的“超过最大请求长度”错误(从这里: ).我所有的FineUploader代码都在这另一个链接中,我想我不需要再发布了 我现在正在寻找一种更好的方法,让IE用户知道他们何时尝试上载过大的文件(Chrome、FF用户收到过大文件警报,所以这不是问题)。我不认为我需要搞乱“messages”选项,因为它们在所有其他浏览器上都正常工作。这是因为它没有发挥应有的作用!IE用户将使用他们选择的文件一直访问服务器。为了处理上传超过f
[HttpPost]
public JsonResult UploadFile(HttpPostedFileWrapper qqfile, int surveyInstanceId, int surveyItemResultId, int itemId, int loopingIndex)
{
bool isValid = false;
// file is too big, throw error.
if (qqfile.ContentLength > (1024*1024*2.5))
{
return CreateJsonResult(false);
}
More Code here if the file is 'good'
}
private JsonResult CreateJsonResult(bool isSuccess)
{
var json = new JsonResult();
json.ContentType = "text/plain";
json.Data = new { success = isSuccess };
return json;
}
这会使基于大小的无效文件上载短路。很好,但是我可以返回不止success=false的值,并让FineUploader使用这个额外的JSON值向用户显示更有用的消息吗?目前显示的所有内容都是“上传失败”。如何引用该无效文件的特定html元素,以便添加更具描述性的错误
另外,我有.on('error')方法,但我不确定如何触发它。这将是一个合乎逻辑的地方,因为文件上载大小问题是一个错误。帮忙?谢谢
failedUploadTextDisplay
选项的mode
属性设置为“自定义”。服务器端,返回您希望在JSON响应的“error”属性中出现在失败文件旁边的错误消息文本。有关更多详细信息,请参阅的底部HttpPostedFileWrapper
的ContentLength
属性,该属性返回上载文件的大小。起初,这让我有点困惑,因为内容长度通常指的是请求的大小。微软方面,该物业的名称选择很糟糕,IMHO。所以,你可以在我的回答中忽略1