我正在使用jQuery文件上传功能来上传IE8中的文件。由于这是旧的非HTML5友好浏览器,因此我使用的是jQuery Iframe Transport Plugin 1.8.2。
未完成“完成”操作,并且iframe内容显示为空。
代码:
$('#files').fileupload({
dataType: 'json',
url: "/FileUploads/Upload",
type: 'PUT',
forceIframeTransport: true,
progressall: function (e, data) {
var progress = parseInt(data.loaded / data.total * 100, 10);
$('#progress .bar').css(
'width',
progress + '%'
);
},
add: function (e, data) {
data.context = $('<button/>').text('Upload')
.appendTo($('#FileUploadsDrop'))
.click(function () {
data.context = $('<p/>').text('Uploading...'+$('#files').val()).replaceAll($(this));
data.submit();
});
},
done: function ( e, data ) {
var result = $( 'pre', data.result ).text();
if(result != null && $.trim( result ) != '' ){
$('#FileUploadsDrop').append( result );
}
}
});`
这是DOM的情况:
在IE控制台中,无法查看json对象。因此,我使用JSON.stringify来检查服务器返回的内容。浏览器似乎无法解析返回的数据,因此JSON对象为此返回了一条错误消息。
我收到此问题的原因是由于以下事实:返回的数据实际上不是json。
所以,为了解决这个问题,我删除了 dataType: 'json',
问题解决了。
本文收集自互联网,转载请注明来源。
如有侵权,请联系[email protected] 删除。
我来说两句