首页 > 代码库 > 简单js fileUpload控件(单例)
简单js fileUpload控件(单例)
single_file_upload.js
var YsUIWidgets=YsUIWidgets||{}; YsUIWidgets.uploadFile = (function($){ var container = null; var changeCallback = function(){}; var acceptTypes = ["jpg","png"];// 接受的上传文件类型 var renderHtml = "<input type=‘file‘ name=‘single-file-upload‘ style=‘display:none;‘/>"; // 添加隐藏的 function renderInputFile(){ // 生成dialog唯一标识 container = $(renderHtml).appendTo("html"); // 添加到文档中去 return container; } function bindEventHandlers(){ $(container).change(function(e){ e.preventDefault(); e.stopPropagation(); var file = e.target.files[0]; if(!validateFileType(file,acceptTypes)){ alert("文件类型不正确!"); return; } changeCallback(file); // 清除value $(this).val(""); }); } // 验证文件类型 function validateFileType(file,acceptTypes){console.log("valid"); var name = file.name; var fileSuffix = name.substr(name.lastIndexOf(".")+1); for(var i=0;i<acceptTypes.length;i++){ var acceptType = acceptTypes[i]; if(acceptType==fileSuffix){ return true; } } return false; } var initialized = false; // 初始化方法 function init(){ if(initialized){ return; } renderInputFile(); bindEventHandlers(); initialized = true; } var uploadFile = function(options){ if(!initialized){init();} // 如果未初始化则初始化 changeCallback = options.changeCallback||changeCallback; acceptTypes = options.acceptTypes||acceptTypes; $(container).click(); }; return uploadFile; })(jQuery);
简单js fileUpload控件(单例)
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。