【发布时间】:2011-04-11 20:47:34
【问题描述】:
我什至不知道这是否可能,但有没有一种方法可以将输入 file 字段中所选文件的值输入 text强>领域?
像这样:
【问题讨论】:
标签: javascript file input field input-field
我什至不知道这是否可能,但有没有一种方法可以将输入 file 字段中所选文件的值输入 text强>领域?
像这样:
【问题讨论】:
标签: javascript file input field input-field
如果不先将文件存储在您自己的服务器上,您将无法做到这一点。
文件输入控件不包含文件的数据。在您通过 POST 表单提交提交文件数据之前,您的浏览器会将其作为占位符提供给您。
如果你在寻找文件的路径,你也不能这样做(在现代浏览器中,正如 Pekka 所说)。浏览器不会将该信息提供给客户端脚本。但是,它可能会提供文件名。
【讨论】:
挂钩文件字段的change 事件。
<form method="post" enctype="multipart/form-data">
<input type="file" onchange="this.form.filename.value = this.value">
<input type="text" name="filename">
</form>
Jsfiddle demo。请注意,IE6/7 错误地给出了完整路径,而其他浏览器正确地只给出了文件名。
【讨论】:
这应该可以通过创建一个新的文本输入元素并使用文件输入的.value 属性填充它来实现。
但是请注意,出于安全原因,所有现代浏览器仅在value 属性中存储文件名。您将无法获得所选文件的完整路径。
来源:MSDN on IE8
【讨论】: