我尝试从我的网页提交联系信息。我使用ajax发布表单数据(名称,主题等..,附件文件)。
的表格值
名称,主题等..,这些是字符串类型
仅附件文件对象类型
我的第一个案例是:
var Name =$("#Full_Name").val()
var Subject =$("#Subject").val()
var Message =$("#Message").val()
var Email =$("#Email_Address").val()
var Phone =$("#phoneNumber").val()
var userfile =$("#uploadBtn").files[0]
var Address =$("#Address").val()
var City =$("#City_Name").val()
var Pincode =$("#City_code").val()
var State =$("#State_Name").val()
var Country =$("#Country_Name").val()
以上代码在没有用户文件(附件文件)的情况下正确发布所有数据
在我的第二个案例中:
我替换
var userfile =$("#uploadBtn").files[0]
这一个
var userfile = new FormData();
$.each($('#uploadBtn')[0].files, function(i, file) {
userfile.append('file-'+i, file);
});
添加此行以将上传文件发布到服务器
但是服务器得到的结果只是 [object:object]
的格式为什么服务器会得到这个结果?如何使用上传文件获取表单数据值
我的代码是:
在HTML中:
<form action="#" name="f" enctype="multipart/form-data" id="myform" >
在Javascript中:
$.ajax({
async:true,
url: "/cgi-bin/servercall_upload.cgi",
type: "get",
processData: false,
contentType: false,
traditional: true,
data: {
Name:Name,
Subject:Subject,
Message:Message,
Email:Email,
Phone:Phone,
userfile:userfile,
Address:Address,
City:City,
Pincode:Pincode,
State:State,
Country:Country
}
});
如何解决此问题?