Javascript/AJAX/send-to-server文本和带有JSON的文件
我正在开发一个小软件,允许插入我客户的商店产品、描述文本和产品照片,然后我需要使用$.ajax()发送文本和文件,只需一次调用 我没有问题发送文本或文件单独,与2个电话,但我可以做它与1Javascript/AJAX/send-to-server文本和带有JSON的文件,javascript,jquery,ajax,file,upload,Javascript,Jquery,Ajax,File,Upload,我正在开发一个小软件,允许插入我客户的商店产品、描述文本和产品照片,然后我需要使用$.ajax()发送文本和文件,只需一次调用 我没有问题发送文本或文件单独,与2个电话,但我可以做它与1 var formData = new FormData(); formData.append("file-identifier", $('#file-identifier').get(0).files[0]); formData.append("variable", $.session.get("variabl
var formData = new FormData();
formData.append("file-identifier", $('#file-identifier').get(0).files[0]);
formData.append("variable", $.session.get("variable"));
$.ajax({
url : "path/to/file.file",
type : "POST",
processData: false,
contentType: false,
data : formData,
dataType: "json",
success : function(data){
//handle on success
},
error : function(jqXHR, textStatus, errorThrown){
console.log(arguments);
}
});
这是我最近用来上传jpeg和从会话变量中获取内容的变量的脚本的一个示例。将这些添加到
FormData
对象后,您可以在一个请求中传输文件和变量。谢谢您的完整回答,但我还有一个问题:我要发送的其他信息(您称为“变量”的字段)是JSON格式的,在PHP后端通过$_POST[“变量”]我只有字符串,自动将任何类型转换为字符串。我如何解决这个进一步的问题?我想这就是你要找的。如果你满意的话,别忘了接受答案。对不起,我的朋友,你给了我很大的帮助,谢谢。使用FormData()可以将任何数据转换为字符串,但我解决了在POST中传递任何字段的问题,而不是传递一种JSON格式。多谢各位