2011-05-16 56 views
4

注:以编程方式设置type =“file”输入HTML元素的值?

答案(S)下面反映的2009年旧版浏览器现在你居然能在2017年

设置文件输入元素的值动态/编程使用JavaScript状态

见这个问题的详细信息,答案以及演示:
How to set file input value programatically (i.e.: when drag-dropping files)?

我需要做的就是以编程方式从JavaScript代码发送POST请求到服务从使用.NET WebBrowser的应用程序,它基本上是一个嵌入式Internet Explorer。此服务需要其中一个字段为“文件”。

因此,有没有什么办法来设置表单中“文件”输入的值,因为我有文件的内容,比如在一个字节数组中(而不是该文件;我没有试图从用户那里窃取文件:))。

或者也许是一种显式创建和发送POST请求而不是动态创建FORM的方法?

我需要使用将在我的WebBrowser(认为IE)中运行的JavaScript代码。这可能吗?

+0

http://stackoverflow.com/questions/1696877/how-to-set-a-value-to-a-file-input-in-html – Sami 2013-04-04 12:44:55

回答

6

不幸的是,这是不可能的,因为这将是一个安全问题。对文件输入字段的Javascript控制非常有限。否则,人们可以使用它从用户的计算机上窃取文件。

由于您可以控制浏览器,因此您可以使用普通的HTTPWebRequest发送文件,但无法在JavaScript中完成。

+0

这是一个带有嵌入式网页浏览器的.NET应用程序。 。从技术上讲,你可以使用'HttpWebRequest'或者直接通过FTP直接上传它:) – mellamokb 2011-05-16 18:15:15

+1

即使我可以从我的JavaScript代码访问文件的内容吗? (内容,而不仅仅是路径)。 – Juan 2011-05-16 18:15:29

+0

是的,我正在将其添加到我的答案 – 2011-05-16 18:15:48

相关问题