Javascript 为动态添加的jQuery上传文件插件使用代理?

Javascript 为动态添加的jQuery上传文件插件使用代理?,javascript,jquery,asp.net,jquery-file-upload,jquery-upload-file-plugin,Javascript,Jquery,Asp.net,Jquery File Upload,Jquery Upload File Plugin,我正在使用。它看起来很完美,只是我不确定如何使它适用于动态添加的文件上载控件。文档中似乎没有这样的例子 上传 点击 $(“.fileuploader”).uploadFile({ url:“您的文件上传url”, 文件名:“myfile” }); $('#btnadd')。在('click',函数(){ $(“#容器”).append('Upload'); //-----如果我取消对它的注释,它会起作用。但我想避免这种情况。 //$(“.fileuploader”).uploadFile({

我正在使用。它看起来很完美,只是我不确定如何使它适用于动态添加的文件上载控件。文档中似乎没有这样的例子


上传
点击
$(“.fileuploader”).uploadFile({
url:“您的文件上传url”,
文件名:“myfile”
});
$('#btnadd')。在('click',函数(){
$(“#容器”).append('Upload');
//-----如果我取消对它的注释,它会起作用。但我想避免这种情况。
//$(“.fileuploader”).uploadFile({
//url:“您的文件上传url”,
//文件名:“myfile”
//  });
});

您所做的是正确的方法之一,因为插件无法绑定到页面首次加载时不存在的元素。这里是另一种方法,使用自定义事件(我认为)更简洁。我在必要的地方添加了内联注释来解释代码

//让我们使用一个自定义的事件控件
$(“#容器”)。在(“controlAdded”,function()上{
//过滤未隐藏的元素
//因为文件上传插件隐藏了它绑定的元素
//也就是说,插件已经绑定到
//那个特别的元素!。
$(“.fileuploader:not(:hidden)”).uploadFile({
url:“您的文件上传url”,
文件名:“myfile”
});
//触发准备就绪,因为我们需要考虑
//页面加载的元素。
}).触发器(“控制添加”);
$('#btnadd')。在('click',函数(){
$(“容器”)
.append('上传')
//在添加新元素时触发自定义事件
.触发器(“控制添加”);
});

上传
单击
<div id="container">
    <div class="fileuploader">Upload</div>
</div>
<button id="btnadd">CLICK</button>


$(".fileuploader").uploadFile({
    url: "YOUR_FILE_UPLOAD_URL",
    fileName: "myfile"
});

$('#btnadd').on('click', function () {
    $("#container").append('<div class="fileuploader">Upload</div>');
    //-----if i uncomment this, it would work. But I want to avoid this.
    // $(".fileuploader").uploadFile({
    //  url:"YOUR_FILE_UPLOAD_URL",
    //  fileName:"myfile"
    //  });

});