0

我正在使用插件来管理我的上传者。但问题是我每次点击按钮时都会添加新的文件上传器,因此插件只加载页面加载时已经创建的元素。这是我所拥有的一个例子:

<div id="uploaders">
    <div class="container">
        <div class="file-uploader">
            <input type="files" name="files[]">
        </div>
    </div>
    <button>Add new uploader</button>
</div>
<script src="js/file-uploader.min.js"></script>
<script>
$(function() {
    $uploaders = $('#uploaders');
    $uploaders.find('.file-uploader input').myPlugin({ options }).on('uploadfinished', function(){ console.log('File uploaded!'); });
    $uploaders.find('button').on('click', function(){
        $(this).closest('.container').append('<div class="file-uploader"><input type="files" name="files[]"></div>'); //This uploader won't load myPlugin
    });
});
</script>

有没有办法可以将该插件附加到所有生成的文件上传器?我知道我可以在附加 HTML 之前立即执行此操作,但这会是个问题,因为我必须再次定义所有配置和事件……

4

1 回答 1

0

使用 jQuery .on() 方法并使用此处描述的“委托事件”方法:http: //api.jquery.com/on/

于 2013-08-28T01:14:22.310 回答