我在文件上传器按钮上方有一个下拉列表,如果下拉列表的值是音频或视频,则想上传到S3,如果下拉列表的值为pdf,doc或ppt,则想上传到我的服务器。我该如何实现呢?
$( '#fileType').change(function() {
lessonType = $('#fileType').val();
if(lessonType == 'audio' || lessonType == 'video') {
$('#fileupload').fineUploaderS3(...);
} else {
$('#fileupload').fineUploader(...);
}
})
上面没有工作,所以想在分配fineuploader或fineuploaderS3之前删除实例。请让我知道如何销毁fineuploader实例。
感谢。
答案 0 :(得分:2)
假设您没有添加与特定上传器关联的额外元素,那么您可以使用$("#fileupload").empty()
在呈现/实例化上传者的其他实例之前从页面中删除上传者的DOM内容。
$( '#fileType').change(function() {
lessonType = $('#fileType').val();
if(lessonType == 'audio' || lessonType == 'video') {
$('#fileupload').reset();
$('#fileupload').empty();
$('#fileupload').fineUploaderS3(...);
} else {
$('#fileupload').reset();
$('#fileupload').empty();
$('#fileupload').fineUploader(...);
}
});
答案 1 :(得分:1)
我必须这样做,在我的情况下,.reset()不存在以清除事件。我能够使用jquery的.unbind()
并且工作得很好:
$('#fine-uploader').unbind().empty()