HTML自动附加文件上载

时间:2014-06-27 17:55:50

标签: javascript html

我试图弄清楚如何允许多个文件上传。目前我的javascript代码会检查文件上传中是否有更改,如果更改了文件已被选中,则代码将附加新文件上传。

问题是它只能在第一次使用。有人知道发生了什么吗?

JS档案:

<script>
$(".file").change(function() {
    $(".file").each(function( index ) {
        if ($(this).val() != "") {
            console.log("empty");
            $("#fileUpload").after("<input class=\"file\" type=\"file\" name=\"file[]\" id=\"file\">");
        }
    });
});
</script>

HTML:

<div id="fileUpload" style="display: none;">
    <input class="file" type="file" name="file[]" id="file">
</div>

解决:

这是任何偶然发现此线程的人的工作版本:

$(document).on("change", ".file", function() {
    if ($(this).val() != "") {
        $("#fileUpload").append("<input class=\"file\" type=\"file\" name=\"file[]\" id=\"file\"><br>");
    }
});

1 个答案:

答案 0 :(得分:2)

更改$(".file").change(function(){

$(document).on("change", ".file", function(){

这是因为您的代码仅在现有元素中运行。通过提议的更改,它将起作用