具有自定义参数的 Ajax 请求
Ajax request with customized parameter
我正在开发一个简单的网页,向服务器发出Ajax请求以上传一些图像。
假设网页有多个上传字段,因此它可以允许用户出于不同的目的上传图像。比方说,一个图片上传字段是上传用户妈妈的照片,另一个字段是上传他爸爸的照片。
在这种情况下,服务器端需要知道哪个上传用于什么目的。我当前使用的 ajax 调用是:
$.ajax({
url: requestUrl,
type: 'POST',
success: successCallBack,
error: errorCallBack,
data: formData, <-- the image
cache: false,
contentType: false,
processData: false
});
我想让服务器知道用户是否正在为爸爸或妈妈发送图像,我也想让服务器知道此图像的长度和格式,也许还有一些额外的字符串来描述此图像。我想知道我是否可以将这些信息编译成 Json 字符串,并将其与图像一起发送。我不知道我应该把所有这些信息放在这个 ajax 调用中的什么位置。有人可以帮忙吗?
我假设您有两个上传按钮用于上传不同类型的图片。您可以做的可能是为每个按钮提供一个 data-id 属性。
例如,这个用于上传用户自己的图片:
<input type="button" data-id="ownpicture" value=""></input>
当你在单击此按钮时调用 ajax 方法时,你可以在变量中捕获 data-id 属性,比如
var pictureType = $(this).attr('data-id');
然后,可以将此值作为参数传递给方法。在服务器端,您可以使用开关盒根据此字符串参数保存正确的图片。有意义?
您可以在表单数据对象中附加其他信息,如以下示例所示:
var fd = new FormData("Your image here");
fd.append("CustomField", "This is some extra data");
$.ajax({
url: "stash.php",
type: "POST",
data: fd,
processData: false,
contentType: false
});
相关文章:
- ajax请求的顺序总是不同的
- 从ajax请求中获取javascript对象
- Ajax请求文档就绪会导致jquery加载缓慢
- MockJax没有在JavaScript应用程序中发送对我AJAX请求的响应
- 正在传递JSONP标头's数据参数到另一个文件中的AJAX请求
- JavaScript代码未正确检查ajax请求
- "日期“;AJAX请求返回的类型值未定义
- 在等待ajax请求时显示微调器并禁用页面
- 跨域ajax请求
- Ajax请求返回空的数据字符串,但首先得到了正确的数据
- Javascript-如何让脚本与Ajax请求的数据一起运行
- ajax请求成功,但可以'我看不到我的数据
- 如何将给定的curl命令复制为jquery ajax请求
- 为什么我能够从javascript控制台发送跨域ajax请求
- 一台特定计算机的Ajax请求数据未定义/失败
- 获取ajax请求的请求头
- 原型Ajax请求参数为嵌套json
- 可以't从AJAX请求中筛选数据
- jQuery Mobile Collapse上的AJAX请求
- 暂停函数执行流程,直到ajax请求完成