0 0

ajaxFileUpload 文件上传问题0

<input type="file" id="attachfile1" name="attachfile1" />
<input type="button" id="upload1" name="upload1" onclick="selectFile()" value="..."/>
js:
function selectFile(){
$('#attachfile1').click();
}

如上所示:
有一个file 和 一个button 用 ajaxFileUpload上传文件,
第一种情况:用file选择文件,再调用ajaxFileUpload,可以上传到后台;
第二种情况:用按下button,触发file的click事件,选择文件,再调用ajaxFileUpload,后台无反应,我把input的name="attachfile1"属性去掉,能进到后台的上传方法,但是因为没有name属性,那些文件名都是空
为什么呢?
谢谢!!!!
2015年1月06日 15:24

3个答案 按时间排序 按投票排序

0 0

采纳的答案

出于安全问题,不允许你用script去给文件框执行click事件。
有的浏览器根本不会触发事件(根本不会弹出文件选择框),
有的浏览器可以触发事件,但是文件不会被上传。

估计你是想把按钮给做成自己想要的效果,那么可以换个思路。
比如把文件框给变成透明的,然后在它的文件选择按钮的下面,布置一个你自己效果的按钮。因为它是透明的,所以用户看到的是你自己效果的按钮,当用户点击你自己效果按钮的时候,实际上是点击到了透明的文件选择按钮,这样就和你第一个测试是一个效果了。

2015年1月06日 17:47
0 0

百度 google

2016年8月22日 15:39
0 0

这样试试

<form>
<input type="file" id="attachfile1" name="attachfile1" /> 
</form>
<input type="button" id="upload1" name="upload1" onclick="attachfile1.click();" value="..."/> 

2015年1月06日 16:05

相关推荐

Global site tag (gtag.js) - Google Analytics