【发布时间】:2018-03-01 07:53:11
【问题描述】:
我在 stackOverflow 中研究了很多答案,但还没有找到从表单上传图像的最简单方法。我正在尝试找出一种使用 Ajax 上传图像的方法。尽管表单、PHP 和 Ajax 编码非常庞大,但我还是为您提供了重要的部分。当我单击提交按钮时,会显示错误消息,即undefined index。
HTML
<form method="post" enctype="multipart/form-data">
<tr>
<th>Image</th>
<td><input type="file" name="image" id="img"></td>
</tr>
</form>
Ajax
$(document).on('click','#sub_prod',function(event){
event.preventDefault();
$.ajax({
url:"product_add_back.php",
method:"post",
data:$('form').serialize(),
dataType:"html",
success:function(strMsg){
$("#prod_add").html(strMsg).show().fadeOut(3000);
}
})
})
PHP
$image_name=$_FILES["image"]["name"];
echo $image_name;
die();
【问题讨论】:
-
serialize不包括文件。检查这个:jQuery Ajax File Upload -
@C2486 我的表单中有数据,尝试使用您建议的答案,但它阻止了表单字段的提交。
-
@Justinas,谢谢,尝试你的方式。
formData,如果您能在答案中给出解决方案,将不胜感激。 -
您可以从序列化数据中循环添加表单字段。