javascript - 动态添加文件到输入

标签 javascript php jquery html jquery-html5uploader

我正在使用这个插件:jQuery HTML5 uploader (参见演示),在表单内。我想在用户提交表单时使用 POST 方法发送上传的文件。

也许我可以创建一个input[type="file"],将其隐藏,并使用输入中的插件动态添加上传的文件?有可能吗?

<小时/>

那么,如果我不能这样做,如何才能使用此插件将文件上传到服务器,只有当用户单击提交按钮时?我知道该插件已经使用 AJAX 执行此操作,但我想在用户单击按钮时上传它们。

也许我应该创建一个名为 files 的变量,当用户单击提交按钮时,我自己使用 AJAX 发送文件和其余输入数据?

类似这样的事情:

jQuery( "#dropbox" ).html5Uploader({
    onClientLoadStart: function( event, file ) {
        files[] = file;
        [...]
    }
});

[...]

jQuery("#button").on("click", function() {
    jQuery.ajax({
        data: files
    });
    [...]
});

最佳答案

出于安全原因,您不能这样做。想象一下可能性。我通过 JavaScript 在隐藏字段中输入文件。您按提交。我拿到你的文件了。任何文件。很可怕,对吧?

关于javascript - 动态添加文件到输入,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21883749/

相关文章:

javascript - 将倒数计时器转换为分钟

javascript - DownForEveryoneOrJustMe.com 和其他类似网站如何使用跨域脚本限制?

javascript - `mapHooks`失败时重定向到另一条路由

javascript - 在 bootstrap 多选下拉菜单上创建工具提示

php - 人们可以通过在地址栏中输入 URL 来访问管理面板页面

php - CakePHP 是否有内置函数来检查 MySQL 注入(inject)?

php - 如何使用 mysql pdo 选择上周(unix 时间)的销售额总和?

jquery - 在 jQuery 中使用选择器选择元素

jquery - 如何更新此 jQuery 模式以加载模板页面上的目标选择器

jquery - slider (旋转木马)与其他元素对齐