another question中的完整说明。
我正在克隆文件输入字段,以便在IE 8中使用多个文件上传。我正在使用这些代码:
function addField(){
if ( $('form input:file').last().val() != "" ){
var lastfile = $('form input:file').last();
var countfile = ($('form input:file').length)+1;
var always = $('#filesUploadId');
var cloned = always.clone();
cloned.attr("name", "correoForm.filesUpload");
cloned.attr("id", "file_"+countfile);
cloned.insertAfter(lastfile);
}
但是,它在IE 8和FF中的工作方式有所不同,但我希望它们在两者中都能正常工作。
如果我选择1.txt,2.jpg,3.zip,在IE8中我有三个文件(实际上是四个,但最后一个没有文件名,所以没关系),但在FF中我有4个,分别为1,2,3和1.txt。 1.txt重复。
所以:
我正在制作一个木板。希望今天能让它运转起来。
答案 0 :(得分:0)
我不知道它是否有帮助,但是当我有一个这样的表格时,我使用数组作为文件输入的名称......我将用代码解释自己:
cloned.attr("name", "correoForm.filesUpload[]");
我在名称的末尾添加了[],因此不是3个具有相同名称的输入,而是可以作为一个输入处理,它将是该输入的数组。
并删除这样的额外输入,(我看到你正在使用jquery)
function removeExtraInputs() {
$('input[type=file]').not(':first').remove();
}