Angularjs总结(六) 上传附件
所用插件:angular-file-upload
这个插件用到的几个指令:nv-file-select(点击选择)、uploader(用于绑定控制器中新建的uploader对象)
HTML:
<div>
<h4>坐标上传</h4>
<span>{{warningMessage}}</span>
<div>
<input type="text" ng-model="displayName" placeholder="请输入显示名称,不超过25个字符" maxlength="25" />
<div>
<input type="file" id="uploader_input" accept="application/text/plain" nv-file-select uploader="uploader" />
<div ><button class="attachment_upload_btn"><span>浏览</span></button></div>
</div>
</div>
<div class="modal-footer">
<button ng-click="uploadAll()">导入</button>
</div>
</div>
控制器文件:
var app=angular.module('app',['angularFileUpload']);
app.controller('Upload-controller',['$scope','FileUploader',function($scope,FileUploader){
var uploader = $scope.uploader = new FileUploader({
url: 'upload.php',
queueLimit: 1, //文件个数
removeAfterUpload: true, //上传后删除文件
autoUpload:false //不自动上传
});
//增加相应的过滤(TXT文本过滤)
uploader.filters.push({
name: 'formatFilter',
fn:funciton(item,options){
var type = '|' + item.type.slice(item.type.lastIndexOf('/') + 1) + '|';
return '|plain|'.indexOf(type) !== -1;
}
});
//增加相应的过滤(大小过滤10M)
uploader.filters.push({
name: 'sizeFilter',
fn:funciton(item,options){
var filesize= item.size/1024/1024;
if(filesize<=10){
return true;
}else{
return false;
}
}
});
//不满足过滤条件
uploader.onWhenAddingFileFailed=function(item,filter,options){
$scope.uploader.clearQueue();
if(filter.name=='formatFilter'){
//如果名为formatFilter的过滤失败的话,下面做一些操作
$scope.warningMessage = '请导入TXT格式文件。';
return;
}
if(filter.name=='sizeFilter'){
$scope.warningMessage = '请导入小于10MB的文件';
//如果名为sizeFilter的过滤失败的话,下面做一些操作
return;
}
}
//重新选择文件时,清空队列,达到覆盖文件的效果
$scope.clearItems = function(){
uploader.clearQueue();
}
//增加文件后,将文件名复制给相应字段
$scope.onAfterAddingFile=function(fileItem){
$scope.displayName=fileItem.file.name;
}
//上传成功后,将服务端信息赋值给前端
$scope.onSuccessItem=function(fileItem, response, status, headers){
//response 服务端返回值
}
$scope.uploadAll = function () {
uploader.uploadAll();
}
}])
accept取值类型列表:
* accept="application/msexcel" * accept="application/msword" * accept="application/pdf" * accept="application/poscript" * accept="application/rtf" * accept="application/x-zip-compressed" * accept="audio/basic" * accept="audio/x-aiff" * accept="audio/x-mpeg" * accept="audio/x-pn/realaudio" * accept="audio/x-waw" * accept="image/*" * accept="image/gif" * accept="image/jpeg" * accept="image/tiff" * accept="image/x-ms-bmp" * accept="image/x-photo-cd" * accept="image/x-png" * accept="image/x-portablebitmap" * accept="image/x-portable-greymap" * accept="image/x-portable-pixmap" * accept="image/x-rgb" * accept="text/html" * accept="text/plain" * accept="video/quicktime" * accept="video/x-mpeg2" * accept="video/x-msvideo"
Angularjs总结(六) 上传附件的更多相关文章
- wordpress多站点环境设置上传附件大小
多站点环境更改上传附件大小: php.ini post_max_size = 8M upload_max_filesize = 10M 另外,后台域名管理中设置/网络设置/可以设置上传文件大小. 代码 ...
- jquery 通过ajax FormData 对象上传附件
之前上传附件都是用插件,或者用form表单体检(这个是很久以前的方式了),今天突发奇想,自己来实现附件上传,具体实现如下 html: <div> 流程图: <input id=& ...
- Discuz! X论坛上传附件到100%自动取消上传的原因及解决方案
最近接到一些站长的反馈,说论坛上传附件,到100%的时候自己取消上传了.经查是附件索引表pre_forum_attachment表的aid字段自增值出现了问题,导致程序逻辑返回的aid值实际为一个My ...
- Discuz模拟批量上传附件发帖
简介 对于很多用discuz做资源下载站来说,一个个上传附件,发帖是很繁琐的过程.如果需要批量上传附件发帖,就需要去模拟discuz 上传附件的流程. 模拟上传 discuz 附件逻辑 dz附件储存在 ...
- 修改WordPress中上传附件2M大小限制的方法/php+iis上传附件默认大小修改方法
在服务器上架设好WordPress后,使用过程中发现,上传附件大小有2M的限制 话说服务器就是本机,可以直接把文件拖到附件存储文件夹下,然后在需要附件的地方引用链接 可是这种落后的方法终究不是办法,还 ...
- Dynamic CRM 2013学习笔记(十三)附件上传 / 上传附件
上传附件可能是CRM里比较常用的一个需求了,本文将介绍如何在CRM里实现附件的上传.显示及下载.包括以下几个步骤: 附件上传的web页面 附件显示及下载的附件实体 调用上传web页面的JS文件 实体上 ...
- 怎样解决asp.net.mvc上传附件超过长度问题?
最近,在做一个上传附件功能,但是文件超过4M,就报上传的文件超过长度问题
- JQuery Uplodify上传附件(同一个页面多个uplodify控件解决方案)
功能描述:实现同一页面中多个不同附件的上传保存,且做到最大程度的减少代码修改量(最大程度的公用),为了方便实现垃圾数据和垃圾文件的处理,项目采用临时文件夹的方式:即:文件自动上传先保存到临时文件夹下, ...
- crm 4 注释与上传附件权限
文档注释权限及上传附件是与实体的”追加到”权限有关. 文档注释权限及上传附件是与核心记录中”注释”的”追加”权限有关. 追加及追加到的权限,我的理解是与本实体有关联的实体的权限,比如你引用了其它表的字 ...
- discuz 模拟批量上传附件发帖
discuz 模拟批量上传附件发帖 简介 对于很多用discuz做资源下载站来说,一个个上传附件,发帖是很繁琐的过程.如果需要批量上传附件发帖,就需要去模拟discuz 上传附件的流程. 插件地址 h ...
随机推荐
- Oracle 字符集的查看和修改 -转
一.什么是Oracle字符集 Oracle字符集是一个字节数据的解释的符号集合,有大小之分,有相互的包容关系.ORACLE 支持国家语言的体系结构允许你使用本地化语言来存储,处理,检索数据.它使数据库 ...
- Tomcat禁止显示目录和文件列表
Tomcat禁止显示目录和文件列表 打开 tomcat的安装目录/conf/web.xml 文件 <servlet> <servlet-name>default</s ...
- JavaScript 概览 更新时间2014-0414-0837
一些概念 DOM(文档对象模型)是HTML和XML的应用程序接口(API).DOM Level1规划文档结构:DOM Level2扩展了对鼠标和用户界面事件等的支持:DOM Level3支持了XML1 ...
- 【PHP】php+txt实现网页计数器(限IP统计方式和不限IP统计方式)
一般的网页计数器制作实现思路:首先设定存放统计数据的文件(counter.txt)——读取文件中的内容存入字符串——自加操作——以写入方式打开文件写入数据——从文件中输出统计数据——关闭文件. 代码: ...
- java 检查抛出的异常是否是要捕获的检查性异常或运行时异常或错误
/** * Return whether the given throwable is a checked exception: * that is, neither a RuntimeExcepti ...
- poj 1847 Tram【spfa最短路】
Tram Time Limit: 1000MS Memory Limit: 30000K Total Submissions: 12005 Accepted: 4365 Description ...
- 386. Lexicographical Numbers
用DFS来做,先弄开头是1的,再弄开头是1的里面开头是1的,再开头是1的里面开头是1的里的开头是1的,再... 是吧-- 比N大了BREAK就行. 注意第一个循环是1-9,往后的循环是0-9. pub ...
- 平时Error记录
The Windows Firewall on this machine is currently 1.This row already belongs to another table. DataT ...
- [置顶] Array ArrayList LinkList的区别剖析
这是一个面试中我们经常被问到的问题 Array.ArrayList.LinkList之间的区别:Array.ArrayList.LinkList均属于泛型的范畴,都用来存放元素,主要区别是Array是 ...
- 利用NPOI开源的读写Excel、WORD等微软OLE2组件读写execl,控制样式或单元格
using System; using System.Collections.Generic; using System.Linq; using System.Web; using System.We ...