我在我的网站上成功集成了 plupload。我可以毫无问题地上传文件,但我不能多次上传同一个文件。
PS:这个问题只出现在 Internet Explorer 上。我对谷歌浏览器没有任何问题。
例如:
- 我上传'hello.jpg'
- 上传立即开始
- 上传完成后,我会显示一个警报(无论如何)。
- 然后我尝试上传相同的文件,但它不起作用。没啥事儿。我在“FilesAdded”事件中设置了一个断点,但从未到达。
但是,如果我尝试上传另一个文件,它运行良好。
但是如果我按 F5(刷新)然后我可以上传以前上传的文件。
任何的想法?我真的希望能够多次上传同一个文件。
例如,如果用户上传了一个文件,然后意识到文件内部有问题并修改了该文件中的某些内容并需要再次上传,那么在我的情况下他无法再次上传......
这是我的代码的一部分:
html部分:
<div id="container">
<a id="pickfiles" href="#" class="btn ui-button-text-icon-secondary">Uploader</a>
</div>
Javascript部分:
var uploader = new plupload.Uploader({
runtimes: 'gears,html5,flash,silverlight,browserplus',
unique_names: false,
browse_button: 'pickfiles',
container: 'container',
max_file_size: '5mb',
url: pFiles.addFileUrl,
multi_selection: false,
multipart: true,
multipart_params: { "type": "undefined" },
filters : [{title : "Adobe PDF files", extensions : "pdf"}],
flash_swf_url: pFiles.uploadFlashUrl,
silverlight_xap_url: pFiles.uploadSilverlightUrl,
resize: { width: 320, height: 240, quality: 90 }
});
uploader.bind('FilesAdded', function (up, files) {
uploader.state = 1;
up.refresh(); // Reposition Flash/Silverlight
uploader.settings.multipart_params["type"] = $('#type').val();
uploader.start();
up.refresh();
$('#messages').show();
});
uploader.bind('UploadProgress', function (up, file) {
$('#messages').html('Progression: ' + file.percent + "%");
});
uploader.bind('FileUploaded', function (up, file, response) {
var msg = $.parseJSON(response.response).Message;
alert(msg);
});
PS:我当前的plupload版本是1.5.4