尝试通过ajax上传多个文件,但在将其重定向上传到另一个空白页面后自动上传,只显示上传文件的名称
以下是html标记
这是javascript函数
function upload(){
var projectId = document.getElementById("projectId").children[0].value;
var referenceNo = document.getElementById("referenceNo").value;
var createdBy = document.getElementById("initiatedBy").value;
if(projectId == null)
{
alert('Please select project first');
return;
}
var formData = new FormData();
var imageFiles = document.getElementById("fileId"),
filesLength = imageFiles.files.length;
for (var i = 0; i < filesLength; i++) {
document.write(imageFiles.files[i].name);
formData.append('files',imageFiles.files[i]);
}
$("#fileId").val('');
var methodName = 'uploadBPMFiles';
formData.append('refId',referenceNo);
formData.append('projectId',projectId);
formData.append('uploadedBy',createdBy);
formData.append('processType','EOT');
$.ajax({
url: webUrl+methodName,
data: formData,
processData: false,
type: 'POST',
cache:false,
dataType: "json",
contentType: false,
enctype : "multipart/form-data",
success: function(responseData) {
alert('success');
/**console.log('responseData: '+responseData);
console.log('responseData: '+responseData);
var obj = (responseData.downloadURLs);
console.log(obj)
for (var i in obj) {
console.log(obj[i]);
//$("response")<a href="http://www.test.com/b6">World</a>
//$('#response').append('<a href="'+obj[i]+'">Link</a>');
}
//console.log($('#response').val());
//console.log('end');
**/
}
,
error: function (responseData) {
console.log('POST failed.');
}
});
}
答案 0 :(得分:2)
注意:当document.write写入文档流时,在已关闭(加载)的文档上调用document.write会自动调用document.open来清除文档。
document.write(imageFiles.files[i].name);
会清除您的文件。您必须附加一个包含文件名称的新元素,以便在您的网站上显示它们。为此,您可以使用jQuery
$("<span>").text(imageFiles.files[i].name).appendTo("body");
答案 1 :(得分:0)
其实我在文档中写了上传的文件名。所以我删除了下面的行
文件撰写(imageFiles.files [I]。名称);