我终于设法让valum文件上传器在所有浏览器上都能工作了。现在,一旦文件被上传,它仍然会在文件输入字段下方的li中显示刚刚上传的文件。我需要删除这个li,因为我正在使用ajax提交一个完整的表单,该表单在提交后会被重置。因此,需要删除之前的文件名。
有什么帮助吗?
<script type="text/javascript">
var ID="";
$(document).ready(function(e) {
var uploader = new qq.FileUploader({
element: document.getElementById('fine-uploader'),
debug:true,
action: '<?PHP echo base_url();?>index.php/teacher/addBook',
allowedExtensions: ['jpeg', 'jpg', 'gif', 'png'],
autoUpload:false,
multiple:false,
template: '<div style="margin-left:0px !important; margin-top:10px" class="qq-uploader span3">' +
'<pre class="qq-upload-drop-area span12"><span>{dragText}</span></pre>' +
'<div class="qq-upload-button btn btn-success" style="width: auto;">{uploadButtonText}</div>' +
'<ul class="qq-upload-list" style="margin-top: 10px; text-align: center; width:280px"></ul>' +
'</div>',
uploadButtonText: '<i class="icon-upload icon-white"></i> Upload Book Cover',
onComplete:function(id,fileName,responseJSON){
ID=responseJSON.id;
},
classes: {
button: 'qq-upload-button',
drop: 'qq-upload-drop-area',
dropActive: 'qq-upload-drop-area-active',
dropDisabled: 'qq-upload-drop-area-disabled',
list: 'qq-upload-list',
progressBar: 'qq-progress-bar',
file: 'qq-upload-file',
spinner: 'qq-upload-spinner',
finished: 'qq-upload-finished',
size: 'qq-upload-size',
cancel: 'qq-upload-cancel',
failText: 'qq-upload-failed-text',
success: 'alert alert-success',
fail: 'alert alert-error',
successIcon: null,
failIcon: null
}
});
$("#add_book").click(function(){
ready=true;
if($("#name").val()=="")
{
$("#name").css('background-color','#FFF2F2').css('border-color','red'); ready=false;
}
if($("#author").val()=="")
{
$("#author").css('background-color','#FFF2F2').css('border-color','red'); ready=false;
}
if($("#isbn").val()=="")
{
$("#isbn").css('background-color','#FFF2F2').css('border-color','red'); ready=false;
}
if($("#subject").val()=="")
{
$("#subject").css('background-color','#FFF2F2').css('border-color','red'); ready=false;
}
if($("#ageGroup").val()=="")
{
$("#ageGroup").css('background-color','#FFF2F2').css('border-color','red'); ready=false;
}
if(ready)
{
uploader.setParams({name:$("#name").val(),author:$("#author").val(),isbn:$("#isbn").val(),subject:$("#subject").val(),age:$("#ageGroup").val()});
uploader.uploadStoredFiles();
$("#name").val("");
$("#author").val("");
$("#isbn").val("");
$("#subject").val("");
$("#ageGroup").val("")
}
});
});
</script>
<div class="page">
<div class="menu"><a href="#">Books</a> | <a href="#" class="active">Students</a></div>
<h2>Add New Book</h2>
<div class="send-form" id="book_form" >
<p style="float:left">
<label>Book Title:</label>
<input class="u-3" name="name" id="name" />
</p>
<p style="float:right">
<label>Book Author</label>
<input class="u-3" name="author" id="author" />
</p>
<p style="float:left">
<label>Book ISBN</label>
<input class="u-3" name="isbn" id="isbn" />
</p>
<p style="float:right">
<label>Subject</label>
<input class="u-3" name="subject" id="subject" />
</p>
<p style="float:left">
<div id="fine-uploader" style="margin-left:0px !important">
</div>
</p>
<p style="float:right; width:250px; margin-top:10px; margin-right:-10px">
<label>Age group (eg. 8-12)</label>
<input class="u-3" name="ageGroup" id="ageGroup" />
</p>发布于 2012-11-16 22:37:54
Fine Uploader 3.0具有重置/处置功能。当我写它的时候,我不是100%确定开发人员将如何使用它,所以它可能需要一些改进,但它将清除上传文件的列表(如果您使用的是FineUploader,而不是FineUploaderBasic)。
请注意,3.0计划于11月19日发布,但如果您愿意,现在可以构建快照版本。
发布于 2012-11-23 19:39:58
您必须包括:
fnOnAdding: function(data)
{
$('#fine-uploader').reset();
return true;
},但是,在我的例子中,使用一个可编辑的数据表,它会重置整个表,而我希望只重置与FileUploader相关的对象。除此之外,它还能工作。
发布于 2013-04-24 02:06:46
我不知道这是不是同样的问题,但看看这个主题:
Delete Specific File From the List of Uploads
嗯,我所做的是,在fileuploader.js中我改变了文件模板,我在<li>列表中输入了一个ID,所以在我的HTML文件(实际上是aspx)中,我为他们写了一个样式
在fileuploader.js中定位
fileTemplate: '<li id="listaArquivos">' +
'<span class="qq-upload-file"></span>' +
'<span class="qq-upload-spinner"></span>' +
'<span class="qq-upload-size"></span>' +
'<a class="qq-upload-cancel" href="#">Cancel</a>' +
'<span class="qq-upload-failed-text">Failed</span>' +
'</li>'
<style>
#listaArquivos
{
display: none;
}
</style>因此,这一点已经随着列表一起消失了。
https://stackoverflow.com/questions/13397161
复制相似问题