let fd = new FormData() // 定义传递的序列化对象,
for (let i = 0; i < addArr.length; i++) { // addArr是选中文件的输入框中的e.target.files
fd.append(addArr[i].name + "", addArr[i]) //通过append()将键名和值放进去
}
此时将上传的文件序列化后,如果还有其他需要上传的参数params
const params = {
company: $('.save-submit-data').eq(0).val(),
actual_initiator: $.trim($('.cascade-select-value').eq(0).text()),
person: $('.save-submit-data').eq(1).val(),
phone: $('.save-submit-data').eq(2).val(),
lend_date: $('.save-submit-data').eq(3).val(),
deadline: $('.save-submit-data').eq(4).val(),
amount: $('.save-submit-data').eq(5).val(),
estimation: $('.aboutGoods').eq(0).val(),
consignee: $('.getGoodsPerson').eq(0).val(),
consignee_phone: $('.getPersonName').eq(0).val(),
delivery_address: $('.getGoodsAddress').eq(0).val(),
images: JSON.stringify(purePicSave),
details: JSON.stringify(detail) // 数组必需使用JSON.stringfy转换为字符串
}

for (key in params) {
fd.append(key + "", params[key]) // 中间的双引号必填,因为这样才能正确序列化其他的参数传递给后台
}

$.ajax({
type: 'POST',
url: "{:url('examine_approve/lend')}", // 路径
data: fd, // 序列化对象
dataType: 'json', // 定义后台返回的数据类型
processData: false, // 必需
contentType: false, // 必需
success: function (res) {
if (res.code == 200) {
dialog.message(res.msg)
setTimeout(function () {
window.location.reload()
}, 1500)
} else {
dialog.message(res.msg, false)
$('.save-data').css('background', '#1E9FFF')
$('.save-data').attr('disabled', false)
}
},
error: function (err) {
console.log(err)
$('.save-data').css('background', '#1E9FFF')
$('.save-data').attr('disabled', false)
}
});

js上传文件到后台时序列化数据的更多相关文章

  1. 通过form表单上传文件获取后台传来的数据

    小伙伴是不是遇到过这样的问题,通过submit提交form表单的时候,不知怎么获取后台传来的返回值.有的小伙伴就会说你不会发送ajax,其实也会.假如提交的form表单中含有文件,怎么办? 步骤1:想 ...

  2. 使用ajaxfileupload.js上传文件

    一直以来上传文件都是使用form表单上传文件,也看到过有人使用js上传文件,不过看起来蛮简单的也就没有怎么去理会.今天突然要使用这种方式上传文件,期间还遇到点问题.因此就记录下来,方便以后遇到这样的问 ...

  3. js上传文件

    一.原始的XMLHttpRequestjs上传文件过程(參考地址:http://blog.sina.com.cn/s/blog_5d64f7e3010127ns.html) 用到两个对象 第一个对象: ...

  4. 纯js上传文件 很好用

    <!DOCTYPE html> <html> <head> <meta charset="utf-8"> <meta name ...

  5. 记录一次node中台转发表单上传文件到后台过程

    首发掘金 记录一次node中台转发表单上传文件到后台过程 本篇跟掘金为同一个作者leung   公司几个项目都是三层架构模式即前台,中台(中间层),后台.前台微信端公众号使用vue框架,后台管理前端使 ...

  6. js 上传文件后缀名的判断 var flag=false;应用

    js 上传文件后缀名的判断  var flag=false;应用 <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional// ...

  7. js上传文件带参数,并且,返回给前台文件路径,解析上传的xml文件,存储到数据库中

    ajaxfileupload.js jQuery.extend({ createUploadIframe: function(id, uri) { //create frame var frameId ...

  8. atitit.javascript js 上传文件的本地预览

    atitit.javascript js 上传文件的本地预览 1. .URL.createObjectURL  1 1.1. 吊销所有使用 URL.createObjectURL 而创建的 URL,以 ...

  9. 解决上传文件或图片时选择相同文件无法触发change事件的问题

    昨天在做一个上传文件的模块时遇到了这样的问题:打开文件一上传,上传成功后再次点击文件一,change事件无反应 <input type="file" name="f ...

随机推荐

  1. Java基础之I/O流

    一.数据流的基本概念 数据流是一串连续不断的数据的集合,就象水管里的水流,在水管的一端一点一点地供水,而在水管的另一端看到的是一股连续不断的水流.数据写入程序可以是一段.一段地向数据流管道中写入数据, ...

  2. turbolink 造成 link_to异常

    link_to  点击之后不刷新不加载文件 send_file 只能在浏览器中打开,而不能下载 解决方法:注释gem turbolink,application.js 中移除turbolink

  3. Android databinding 开发参考

    1,android studio添加databinding依赖需要注意事项: http://www.zhihu.com/question/33538477?sort=created 2, databi ...

  4. oracle ORA-12514: TNS:listener does not currently know of service requested in connect descriptor

    ORA-12514: TNS:listener does not currently know of service requested in connect descriptor 1.看看是不是监听 ...

  5. Android开发学习之三——第一个Android程序

    下面我们建立第一个Android程序. 打开Eclipse,开始如下步骤: 1.File ==> New ==> Android Application Project 出现如下窗口: 2 ...

  6. adaptiveThreshold自适应二值化源码分析

    自适应二值化介绍: 二值化算法是用输入像素的值I与一个值C来比较,根据比较结果确定输出值. 自适应二值化的每一个像素的比较值C都不同,比较值C由这个像素为中心的一个块范围计算在减去差值delta得到. ...

  7. RStudio安装package时出现错误

    cannot open URL 'http://www.stats.ox.ac.uk/pub/RWin/src/contrib/PACKAGES' 提示是打不开链接,你切换为国内的源试试Rstudio ...

  8. Sysctl命令及linux内核参数调整

        一.Sysctl命令用来配置与显示在/proc/sys目录中的内核参数.如果想使参数长期保存,可以通过编辑/etc/sysctl.conf文件来实现.    命令格式:  sysctl [-n ...

  9. bzoj 2251: 外星联络 后缀Trie

    题目大意 http://www.lydsy.com/JudgeOnline/problem.php?id=2251 题解 本来以为这道题应该从01序列的性质入手 结果就想歪了 等自己跳出了01序列这个 ...

  10. javacv实现实时视频截图和录像服务easyCV

    本项目维护于github:https://github.com/eguid/easyCV 1.介绍 本项目基于javaCV1.4.x. 其中实现了 (1)实时视频截图服务(支持rtsp/rtmp/ht ...