Dan*_*nny 5 php ajax jquery file-upload
我对jQuery和Ajax函数比较陌生,但过去几天一直在使用Ajax表单.我遇到了文件上传的问题,但是在尝试上传图片时.在寻找资源的同时,我找不到任何有用的东西,因为它们似乎过于复杂,没有任何无意义的额外内容,或者没有任何解释,这无助于我进一步学习.
我编写了这段代码来处理Ajax中的图像上传:
$(function() {
$('.input_photo').on("change",function() {
var formData = new FormData($('form.upload-form'));
$.ajax({
url: "upload.php",
type: "POST",
data: formData,
success: function (msg) {
alert(msg)
}
});
});
});
Run Code Online (Sandbox Code Playgroud)
这会向upload.php
文件发送请求,但是没有数据发送,基本上我的表单就是这样:
<form class="upload-form">
<input type="file" name="input_photo" class="input_photo" />
</form>
Run Code Online (Sandbox Code Playgroud)
似乎没有数据在头文件中传递,我想我会通过PHP使用$_POST['data']
数组或$_FILES
?有更好知识的人请帮助解释一下,进一步理解这一点会很棒.谢谢.
这适用于一个或多个文件.
$('input:file').on('change', function () {
var data = new FormData();
//Append files infos
jQuery.each($(this)[0].files, function(i, file) {
data.append('file-'+i, file);
});
$.ajax({
url: "my_path",
type: "POST",
data: data,
cache: false,
processData: false,
contentType: false,
context: this,
success: function (msg) {
alert(msg);
}
});
});
Run Code Online (Sandbox Code Playgroud)
然后
$_FILES['file-0']
$_FILES['file-1']
[...]
Run Code Online (Sandbox Code Playgroud)
归档时间: |
|
查看次数: |
13307 次 |
最近记录: |