javascript - 如何用javascript模拟文件选择?

标签 javascript

我尝试以编程方式模拟用户单击 html 元素类型 input:file 以在 Firefox 浏览器上使用 JavaScript 将文件上传到网站。 我的 javascript 文件中的以下 javascript 代码模拟并打开文件对话框:

var target_element; 
var dispatchMouseEvent = function(target, var_args) { 
    var e = document.createEvent("MouseEvents");
    e.initEvent.apply(e, Array.prototype.slice.call(arguments, 1));
    target.dispatchEvent(e); 
};

target_element = window.content.document.getElementById("DivElement");
dispatchMouseEvent(target_element, 'mouseover', true, true);
dispatchMouseEvent(target_element, 'mousedown', true, true); 
dispatchMouseEvent(target_element, 'mouseup', true, true); 
dispatchMouseEvent(target_element, 'click', true, true);

但我找不到一种方法来以编程方式模拟文件对话框上文件的选择,就像用户选择文件并单击文件对话框的“打开”按钮一样。可以用 javascript 实现吗?

最佳答案

这是不可能的,而且有充分的理由。如果您可以在客户端自动选择文件,则可能会导致大规模的安全和隐私泄露。

关于javascript - 如何用javascript模拟文件选择?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15174550/

相关文章:

javascript - i18next html 转义 - 服务器端生成的电子邮件需要

javascript - 展开连接查询中的嵌套数据

javascript - React map 更改索引号并破坏条件渲染

javascript - 如何创建出现在表格行下方的 div

javascript - 水平平滑滚动

javascript - Chart.js getElementsAtEvent 正在为折线图返回空数组

javascript - 将 Excel 数据粘贴到 html 表格中

javascript - 如何解决此错误 - 没有属性 "onFocus"

javascript - var cl = console.log 不起作用

javascript - 如果是正数则返回 '+' +n