Javascript 在现有ajax代码中添加图像上传功能
我的代码在这里工作良好,除了图像上传。它将所有数据插入数据库Javascript 在现有ajax代码中添加图像上传功能,javascript,php,jquery,ajax,Javascript,Php,Jquery,Ajax,我的代码在这里工作良好,除了图像上传。它将所有数据插入数据库 <input type="file" name="image2" class="file" id="imgInp"/> 但在php中添加文件类型输入后,它显示 注意:第18行C:\xampp\htdocs\upload\submit.php中未定义的索引:image2 如何在现有代码中添加图像上传功能 //问题就在这里 //问题就在这里 提交 $(文档).ready(函数(){ //使用$.ajax()方法提交
<input type="file" name="image2" class="file" id="imgInp"/>
但在php中添加文件类型输入后,它显示
注意:第18行C:\xampp\htdocs\upload\submit.php中未定义的索引:image2
如何在现有代码中添加图像上传功能
//问题就在这里
//问题就在这里
提交
$(文档).ready(函数(){
//使用$.ajax()方法提交表单
$(“#注册表格”)。提交(功能(e){
e、 preventDefault();//防止默认提交
$.ajax({
url:'submit.php',
键入:“POST”,
数据:$(this).serialize()//它将序列化表单数据
})
.完成(功能(数据){
$(“#表单内容”).fadeOut('slow',function(){
$('#form content').fadeIn('slow').html(数据);
});
})
.fail(函数(){
警报('Ajax提交失败…);});
});
您可以使用FormData,我建议您也可以更改表单的元素id,现在所有元素都有('lname'),请使用当前的:
在yout HTML中,为文件输入输入一个ID
<input type="file" name="image2" id="name="image2"" class="file" id="imgInp"/>
在PHP代码中,您可以使用$_文件访问图像,并且$_POSTFormData()的输入可以在上运行。如果您想要旧浏览器支持,请使用插件
你的表格
<form method="post" action="action.php" id="reg-form" enctype="multipart/form-data" autocomplete="off">
沙文
<script type="text/javascript">
var frm = $('#reg-form');
frm.submit(function (ev) {
var ajaxData = new FormData(frm);
$.ajax({
type: frm.attr('method'),
url: frm.attr('action'),
data: ajaxData,
contentType: false,
cache: false,
processData:false,
success: function (data) {
alert('ok');
}
});
ev.preventDefault();
});
var frm=$(“#注册表形式”);
提交财务报表(功能(ev){
var ajaxData=新表单数据(frm);
$.ajax({
类型:frm.attr('method'),
url:frm.attr('action'),
数据:ajaxData,
contentType:false,
cache:false,
processData:false,
成功:功能(数据){
警报(“正常”);
}
});
ev.preventDefault();
});
在php中,
extract($\u POST)
获取所有输入数据,以及$\u FILE
获取文件使用FormData()通过AjaxThank上传文件。您能帮助我仅在提交时加载此表单或仅在提交此div时加载此表单吗。只需在提交表单$('#reg form')中替换/组合JavaScript代码即可。提交(函数(e){//在此处添加代码。。。。
<script type="text/javascript">
var frm = $('#reg-form');
frm.submit(function (ev) {
var ajaxData = new FormData(frm);
$.ajax({
type: frm.attr('method'),
url: frm.attr('action'),
data: ajaxData,
contentType: false,
cache: false,
processData:false,
success: function (data) {
alert('ok');
}
});
ev.preventDefault();
});