使用webuploader插件实现多图片上传功能
官网: http://fex.baidu.com/webuploader/demo.ht...
其中upload.js代码中封装了图片预览上传的代码,而它的代码实现是根据页面class的样式,来做上传成功失败的判断的,所以总提示上传成功,不管我JAVA服务端返回的JSON是什么,都是上传成功。
求大神帮看看。
function setState( val ) {
var file, stats;
if ( val === state ) {
return;
}
$upload.removeClass( 'state-' + state );
$upload.addClass( 'state-' + val );
state = val;
switch ( state ) {
case 'pedding':
$placeHolder.removeClass( 'element-invisible' );
$queue.hide();
$statusBar.addClass( 'element-invisible' );
uploader.refresh();
break;
case 'ready':
$placeHolder.addClass( 'element-invisible' );
$( '#filePicker2' ).removeClass( 'element-invisible');
$queue.show();
$statusBar.removeClass('element-invisible');
uploader.refresh();
break;
case 'uploading':
$( '#filePicker2' ).addClass( 'element-invisible' );
$progress.show();
$upload.text( '暂停上传' );
break;
case 'paused':
$progress.show();
$upload.text( '继续上传' );
break;
case 'confirm':
$progress.hide();
$( '#filePicker2' ).removeClass( 'element-invisible' );
$upload.text( '开始上传' );
stats = uploader.getStats();
if ( stats.successNum && !stats.uploadFailNum ) {
setState( 'finish' );
return;
}
break;
case 'finish':
stats = uploader.getStats();
if ( stats.successNum > 0 ) {
alert( '上传成功' );
} else {
// 没有成功的图片,重设
state = 'done';
location.reload();
}
break;
}
我也使用过 WebUploader
,获取文件上传后后端返回的 response
可以使用
uploader.on('uploadCompleted', function(file, response) {
// 如果后台返回了失败时的数据,在此做判断,然后判断是否失败
});