2013-08-02 254 views
2

我有这样的代码上点击超文本打开文件上传窗口:是否可以使用JavaScript

<script type="text/javascript"> 
function performClick(node) 
{ 
    var evt = document.createEvent("MouseEvents"); 
    evt.initEvent("click", true, false); 
    node.dispatchEvent(evt); 
} 
</script> 

<a href="#" onclick="performClick(document.getElementById('theFile'));"> 
    Open file dialog 
</a> 
<input type="file" id="theFile"/> 

此代码虽然满足打开文件上传窗口的基本准则,是我想拥有的是input type =“file”字段隐藏在我的网页上。

任何创意人?

+3

只是使用一个

+1

为了安全起见,使用''做任何棘手的事情都很困难.. –

+0

@dandavis同意。如果OP更喜欢,那么可以将其设置为超链接。 –

回答

1

添加样式您theFile,无论是visibility: hiddendisplay: none将做的工作。

0

我假设你的意思是下载,或者这个问题没有意义。您可以链接到.zip.7z文件扩展名,或者您的服务器或浏览器不会尝试解释的任何文件扩展名,或发送正确的标题。请参阅:

http://webdesign.about.com/od/php/ht/force_download.htm

+1

这与PHP有什么关系? –

+0

不,他们正在通过'

' –

+0

@sanki讨论*上传*文件 - 这个问题没有得到保护,你应该能够发表一个答案与7代表。 –