关于ajaxfileupload,建议还是别用,已经没有人维护的脚本了,笔者就是入了这个坑。
在IE浏览器中ajaxfileupload返回data为空
jq.ajaxFileUpload
(
{
url: BatchInvoiceUrls.UploadExcelUrl, //用于文件上传的服务器端请求地址
secureuri: false, //是否需要安全协议,一般设置为false
fileElementId: fileElementId, //文件上传域的ID
dataType: 'text', //返回值类型 一般设置为json
type: "post",
success: function (data, status) //服务器成功响应处理函数
{
针对这个问题,笔者一直在找前端的问题,因为后端函数用工具调用都是成功的,在检查前端代码时发现前端代码是没有问题的,然后就自己重新整理下思路,
后端我之前返回的是json格式的字符串,在调试跟进时发现IE上不识别这种返回格式。问题找到了,解决方法自然就呼之欲出了。
Response.Headers.Add("Content-Type", "text/html");
修改返回头类型之前是text/json改成text/html就可以了。用response.write()输出就能获取到data值了。 |