我正在尝试在我的网站上使用jQuery文件上传插件,但目前是不可能的,文档是我见过的最糟糕的.我唯一可以看到的是一些演示文件,其中有很多代码行,没有任何解释.
我试图在我的网站中使用它,CSS和JS文件包含在演示中,但是文件上传插件没有被渲染,因为它应该.
经过一番研究,我发现jquery.fileupload-jquery-ui.js的_renderUpload方法从未被调用过. _create方法同样的文件.这些方法是负责添加CSS类,以便文件上传可以看起来更好.
这是我有的HTML代码:
<div class="fileupload-buttonbar"> <div class="fileupload-buttons"> <span class="fileinput-button"> <span>Agregar archivo...</span> <input type="file" name="files[]"> </span> <button type="submit" class="start">Importar</button> </div> <div class="fileupload-progress fade" style="display:none"> <!-- The global progress bar --> <div class="progress" role="progressbar" aria-valuemin="0" aria-valuemax="100"></div> <!-- The extended global progress information --> <div class="progress-extended"> </div> </div> </div> <table role="presentation"><tbody class="files"></tbody></table>
这是初始化:
$(function () { $('#fileupload').fileupload({ url: '@Url.Action("Import")',disableImageResize: false,maxFileSize: 30000,acceptFileTypes: /(\.|\/)(csv|txt|xls|xlsx)$/i,singleFileUploads: true,autoUpload: false,maxNumberOfFiles: 1,change: function (e,data) { alert(data.files.length); $.each(data.files,function (index,file) { $('#import_file').text(file.name); $('button#import').attr('style','display: '); $('span#status').text(''); }); },add: function (e,data) { alert(data.files); data.context = $('button#import') .click(function () { data.context = $('span#status').text('Importando...'); $('button#import').attr('style','display: none'); data.submit(); }); },done: function (e,data) { data.context.text('Completo.'); $("#administradores").trigger("reloadGrid",[{ page: 1 }]); } }); $('#fileupload').addClass('fileupload-processing'); }
最后,我告诉我包括以下CSS文件:jquery.fileupload-ui.css
这就是JS文件的顺序:
> jquery.ui.widget.js
> jquery.iframe-transport.js
> jquery.fileupload.js
> jquery.fileupload-process.js
> jquery.fileupload-validate.js
> jquery.fileupload-ui.js
> jquery.fileupload-jquery-ui.js
任何帮助将不胜感激
谢谢
海梅
解决方法
我有错误的id那是问题.
问候,海梅