我正在使用 Plupload jQuery UI 小部件作为我的上传器的基础。该小部件允许用户拖动重新排序添加的文件。
上传是在提交表单时自动开始的,而不是由用户手动开始的。在上传期间,用户界面被阻止,因此用户无法添加更多文件。
在上传开始之前,我需要重命名所有要上传的文件以数字方式上传,以便要上传的第一个文件(jQuery UI 小部件列表顶部的那个)是“1”,第二个是“2”,依此类推.
例如,给定以下列表:
bob.jpg
ann.jpg
doug.jpg
chris.jpg
我想让它们重命名:
1.jpg
2.jpg
3.jpg
4.jpg
这在用户添加新文件或删除现有文件时有效。当用户拖动重新排序文件时不起作用。这是上传者的实例化代码:
$('#' + div_id).plupload({
runtimes: 'html5, flash, silverlight',
url: 'upload',
unique_names: false,
rename: true,
sortable: true,
buttons: { browse: true, start: false, stop: false },
// Flash settings
flash_swf_url: 'js/plupload/plupload.flash.swf',
// Silverlight settings
silverlight_xap_url : 'js/plupload/plupload.silverlight.xap',
init: {
QueueChanged: function(up) {
for (var i = 0; i < up.files.length; i++) {
up.files[i].name = (i+1);
}
}
}
});
我不知道如何检测用户何时拖动重新排序。如果做不到这一点,我看不到在队列上传首次开始时触发的事件。