我已经写了一个功能,我希望上传一个表单而不使用任何形式,我可以使用jQuery的POST方法发送一个文件/文件到'upload.php'。输入标签不在任何表单标签内。它单独站立。下面是我的代码:没有显示,而试图做没有窗体的文件上传?
我的纯HTML的输入型= '文件' 不形:
<div class="profile_pic">
<img id="upload-button" class="profile-pic img-circle profile_img" src="img/default-image.png" alt="default">
<input class="file-upload" type="file" name="profile_pic" id="profile_pic" />
</div>
我的JavaScript代码是:
var readURL = function(input) {
if (input.files && input.files[0]) {
var reader = new FileReader();
reader.onload = function (e) {
$('#upload-button').attr('src', e.target.result);
}
reader.readAsDataURL(input.files[0]);
}
}
$(".file-upload").on('change', function(){
readURL(this);
alert('working');
var file = file1.files[0];
var formData = new FormData();
formData.append('formData', file);
$.ajax({
url: "uploadFile.php",
type: "POST",
processData: false,
contentType: false,
dataType : 'json',
data: formData,
success: function (data) {
alert(data);
}
});
});
$("#upload-button").on('click', function() {
$(".file-upload").click();
});
下面
UploadFile.php代码:
<?php
$file_name = $_FILES['profile_pic']['name'];
echo $file_name; ?>
任何人都可以告诉我我做错了什么?提前致谢。
整个故事就在这里http://stackoverflow.com/questions/2320069/jquery-ajax-file-upload –