我正在创建一个将用户应用程序提交到第三方站点的工作板站点。用户在申请时必须提供以下信息:姓名,联系方式和简历。由于这些字段也可以在网站上的用户个人资料中使用,我们希望预先填写表单字段,允许用户根据需要更改信息。
现在,可以填充所有其他字段而不会出现问题。但是,由于安全性违规,无法填充文件输入字段。是否可以使用FILE API
和BLOB
对象进行解决?
我打算做的事情如下:
此外,如果有任何替代方法可以实现此目的,请告诉我。我正在使用PHP
和JavaScript
来生成表单,因此我可以在PHP
中进行预处理。
答案 0 :(得分:2)
- 将此文件附加到文件输入字段< - 这是我无法弄清楚并需要帮助的。
醇>
无法在<input type="file">
元素的FileList
对象处设置值。
您可以创建File
对象并将其附加到FormData
对象,并使用FormData
XMLHttpRequest()
var data = new FormData();
data.append("file", /* Blob | File */, "filename.ext")
答案 1 :(得分:0)
创建答案只是为了更深入地了解我是如何解决这个问题的,以及为什么首先出现问题。
后台:我为客户端创建了一个自定义WordPress插件,该插件从各个站点获取作业应用程序,并以内联方式显示它们。我们还允许提交申请,用户可以附上他们的简历,并将其提交给原始职位发布。由于很多用户在他们的手机上访问该网站,他们没有相同的简历。在这种情况下,我们希望为他们提供使用存储在其个人资料中的简历的工具。
潜在解决方案:最简单的方法是从用户的个人资料中通过ajax获取文件内容,并在提交前将其附加到表单。然而,无论出于何种原因,这都行不通。
应用解决方案:有效的解决方案是相当古老的学校。我们没有直接提交申请,而是将其提交到中间页面,该页面从用户的个人资料中提取文件内容,修改表单数据并通过curl提交。这也保存了用户端的双重数据交换(文件下载和重新上传)。