我正在使用 ASP.NET 制作多文件上传器,并且我知道 IE 不支持multiple
内部属性<input type="file"/>
。
所以我写了一个jQuery代码来检查用户是否使用IE。如果是,则显示一个按钮,让用户添加多个文件上传控件,这样他也可以上传多个文件。
问题是,当用户单击该链接以生成<input/>
控件,然后再次单击以添加第三个控件时。什么都没发生!.. 只添加了一个控件,因此可以使用两个控件。不多,无论他点击多少,都不会<input/>
添加更多控件。
这是我的代码:
$(function () {
if (!('multiple' in document.createElement('input'))) {
var add_btn = $("<a href='#'>Add more photos</a>").insertAfter("#ContentPlaceHolder1_upload_lbl");
var upload_pnl = $('<input type="file" runat="server"/>');
var upload_holder = $("#fileinput_placeholder");
add_btn.on("click", function () {
upload_holder.append(upload_pnl);
alert("click event called(debugging)");
});
}
});
这是该部分的节点树的图片: