发表于: 2017-03-06 11:28:46
1 1279
完成的事情:
把file和form data的任务相关功能测试了出来
计划的事情:
完成angular的封装
问题:
参考网上方法完成文件的读取和显示代码
$('#selectFile').change(function(){
var readFile = new FileReader();
readFile.readAsDataURL($(this)[0].files[0]);
readFile.onload = function(){
$('.selectPic:first').attr('src',readFile.result);
fileReady = true;
}
readFile.error = function(){fileReady = false;}
})
但是在操作过程中,发现this和$(this)有所区别,
在readFile.readAsDataURL($(this)[0].files[0]);中
开始是$(this).files[0],一直显示找不到什么什么的错误,因为习惯而忽略其中问题,一直查找files的问题,后来换成$('#')和document.get..id()后,再直接换成this.files[0]后,发现问题:
使用js对象都能成功,而jq对象,即使是id名词,也需要像调用数组一样添加[0]选择。
jq的对象和js的对象不一样,即使同样是id对象,在方法和值的获取调用有区别。
好吧,先把这个问题记录下来,以后研究
上传数据上使用FormData方法
若使用<form>标签包括<input>内容,则可以直接 var fd = new FormData(form data);使用
若直接读取<input>,则可var fd.append('file',data);添加
然后老方法使用ajax上传即可
注意:url:"/carrots-admin-ajax/a/u/img/test",
type:"POST",
data:{'file':文件}
这个是上传链接和格式
然后到angular的函数封装。。。。怎么读取路由中的参数?怎么在主页里响应路由中的change事件?
带着问题,搜索了半天,就进入下一天了
收获:
file和FormData的简单应用
评论