通过javascript以编程方式将文件插入HTML输入

时间:2015-04-01 14:34:16

标签: javascript file input

有没有办法通过javascript将文件从服务器放入文件类型输入标签?就像我改变文本类型输入值的方式一样,我想将文件插入到文件类型输入中。

我已经尝试过这样的事情:

var _file = new File();
document.getElementById('fileInputId').files[0] = _file;

但似乎输入的filelist属性受到保护,我无法更改其中的文件对象。

我想从服务器上带一个文件并将其加载到文件输入中。

有没有办法解决这个问题?

感谢y' all!

1 个答案:

答案 0 :(得分:0)

如果您需要测试(cypress):

cy.get('input[type=file]').then($input =>
    cy.fixture(fname)
        .then(Cypress.Blob.base64StringToBlob)
        .then(blob => {
            const file = new File([blob], fname, {type});
            const dt = new DataTransfer;
            dt.items.add(file);
            $input[0].files = dt.files;
        });