其实在ajax出现之前,web应用也可以是无刷新的,那时大多通过ifr a me来做到这一点。当然Ajax出现之后,人们一窝蜂地投奔Ajax 的阵营了,ifr a me 就乏人问津了。但是用ifr a me来实现无刷新上传文件确实一个很好的选择。
解决办法是通过一个隐藏的ifr a me来处理上传操作我采用的是ReactJS,amazeui,nodejs
1.html target指向ifr a me的name,就是把上传后的操作交给ifr a me来处理.
<form id="sup
ifr a me 的name可以是link或者form的target,将link或form打开到这个ifr a me上。
之前在IE遇到过设置不了ifr a me的name属性
Javascr ipt代码
var ifr a me = document.createElement('ifr a me');
ifr a me.name = 'ifr';
//ifr a me.setAttribute('name', 'ifr'); //这样也不行
上面两种方式都无法设置。后来找到原来也可以这样
1、文件上传,图片上传,第三方uploadify插件,http://www.uploadify.com/about/
2、用ifr a me上传文件,提交表单,主要思路就是:
a、js创建form表单,ifr a me,添加到body里,form的target要和ifr a me的name一致。
b、form表单里更新数据,submit提交
c、如果上传文件,图片,form里面添加 input-file 元素,绑定onchange事件,js触发,在onchange里面添加submit事件