createUploadForm: function (id, fileElementId)
{
//create form
var formId = 'jUploadForm' + id;
var fileId = 'jUploadFile' + id;
var form = $('<form action="" method="POST" name="' + formId + '" id="' + formId + '" enctype="multipart/form-data"></form>');
var oldElement = $('#' + fileElementId);
var newElement = $(oldElement).clone(true).val(""); //核心
// var newElement = $(oldElement).clone(true);
// oldElement.after(oldElement.clone().val(""));
$(oldElement).attr('id', fileId);
$(oldElement).before(newElement);
$(oldElement).appendTo(form);
//set attributes
$(form).css('position', 'absolute');
$(form).css('top', '-1200px');
$(form).css('left', '-1200px');
$(form).appendTo('body');
return form;
},
var newElement = $(oldElement).clone();
记得第一个问题是,就是上传一次之后,就会不能上传
第二版
var newElement = $(oldElement).clone(true);
但是又出现一个问题就是上传同样文件也会有BUG,就是同名文件之后,就不能直接上传文件,但是chrome和ie不能直接克隆控件,据说是为了控件安全
不会初始化input file的文件名,需要改成
var newElement = $(oldElement).clone(true).val(""); 克隆之后就直接初始化值
其他是不是有改动我也记不得了,好像只有这个,不放心,请进入群内下载文件