首页 新闻 会员 周边

无刷新上传

0
悬赏园豆:30 [已解决问题] 解决于 2010-05-06 16:38

关于无双新上传不论怎样做,原理都是一样的,把刷新交给iframe, JS是不容许直接像服务器上传的,

现在问题是这样的,

我有一个<img src="" onclick="addfile()">

function addfile()

{

  var file = document.createElement("input");

     file.type="file";file.style.display="none";file.onchange=function(){..}

  document.body.appendChild(file);

  file.click();

}

但是这样做了以后,我去提交这个form的时候,他出现了拒绝访问,有人说是因为微软处于安全方面的考虑,不容许直接通过JS控制,必须通过点游览按钮去选择文件,才可以form.submit(),

但是仿163上传的那个图片上传却可以做到避开,直接提交.

原因出在哪里?

 

双调的主页 双调 | 初学一级 | 园豆:7
提问于:2010-05-06 14:37
< >
分享
最佳答案
0

不是不允许是不允许在点击事件里面执行其他的代码。

我以前用过这样的

<input type="file"onpropertychange="document.getElementById('submitform').click();"><input id="submitform" type="submit" value="upload">

像这样是可以的

收获园豆:30
LittlePeng | 老鸟四级 |园豆:3445 | 2010-05-06 16:16
虽然我给了你最佳答案,是因为分数已经收不回了, 你确定这样可以的? 为什么我无法运行
双调 | 园豆:7 (初学一级) | 2010-05-06 16:40
但是现在我已经知道该如何做了,但是我也想看看你的那种方式 绕开是不可能的,这是游览器安全问题, 但是可以通过CSS先透明,然后margin一下,来表现出一张图片的样式
双调 | 园豆:7 (初学一级) | 2010-05-06 16:42
@双调: 这个是这样的,你不看google论坛的文件那块都做到了吗?这只是个样子,你没有发现选定文件之后页面就会自动回发吗?我测试是可以的,以前也在系统里面用了。不过这个只能在ie里面使用。因为onporpertychange事件的问题,解决firefox下要使用activex。
LittlePeng | 园豆:3445 (老鸟四级) | 2010-05-06 22:08
清除回答草稿
   您需要登录以后才能回答,未注册用户请先注册