当我们基本上在html上传文件时,我们写了
<input type="file" />
此代码提供ChooseFile
按钮,no file chosen
但我想要的是创建一个超链接,并点击超链接,使其像type="file"
类型的输入一样工作 - 例如:
<a href="#" >ChooseFile</a>
有什么建议吗?
答案 0 :(得分:1)
不要认为你可以将input = file按钮设置为超出某个限制,
检查这些链接
http://www.quirksmode.org/dom/inputfile.html
或者您可以尝试使用现成的插件为您完成这项工作
答案 1 :(得分:1)
我认为这对你有帮助..
<!DOCTYPE html>
<html>
<body>
<p>Click on one of the text labels to toggle the related control:</p>
<div>
<a href='#UPLOAD' >Upload a file</a>
<input type='file' name='file1'
style='cursor:pointer; opacity:0.01; alpha(opacity=1); position:relative; z-index:200; left: -10em; margin:-0.3em;' />
</div>
</body>
</html>
答案 2 :(得分:0)
尝试使用现有的jquery插件上传文件,我推荐这个:http://blueimp.github.io/jQuery-File-Upload/
答案 3 :(得分:0)
最好的办法是使用一个记录良好的技巧,最终将文件输入元素隐藏为div的子节点,以满足您的需求。我说这是有据可查的,因为它是关于SO的一个非常常见的常见问题解答,并且在互联网上的许多其他网站和博客文章中都有介绍。
请勿使用javascript单击您的文件输入元素。您可能会遇到浏览器实施的安全限制。有些浏览器可能甚至不允许这样做。其他如IE,在使用javascript单击文件输入元素后尝试通过javascript发送文件时会抛出安全错误。
如果您想避免重新发明轮子,可以使用预先构建的库来处理跨浏览器文件上传的复杂性。我推荐Fine Uploader。它得到了很好的支持,非常活跃,而且发展迅速。完全披露:我是这个图书馆的主要维护者。