在jquery中,使用ajax上传文件和文本
function onSubmit (data) { //获取文本 var callingContent = $(\'#callingContent\').val() // 获取文件 var files = $("#selected_files")[0].files[0]; //把文本和文件都存入formData,再发送ajax上传 var formData = new FormData(); formData.append(\'file\', files); formData.append(\'text\', callingContent); console.log(formData) $.ajax({ url: \'/webcall/import_excel\', type: \'POST\', cache: false, data: formData, processData: false, contentType: false, mimeType: "multipart/form-data" }).done(function(res) { res = JSON.parse(res) if (res.code == 0) { var data = res.data[0]; console.log(data) localStorage.setItem("callingData", JSON.stringify(data)) $(\'#calling-submit\').removeClass(\'layui-btn-disabled\') $(\'#calling-submit\').addClass(\'layui-btn-primary\') $(\'#calling-submit\').addClass(\'active\') $(\'#calling-submit\').on(\'click\', startCalling) } else { layer.open({ type: 1 ,offset: \'auto\' ,id: \'layerDemoAuto1\' //防止重复弹出 ,content: \'<div style="padding: 20px 100px;">导入名单失败,请重试</div>\' ,btn: \'确认\' ,btnAlign: \'c\' //按钮居中 ,shade: 0 //不显示遮罩 ,yes: function(){ layer.closeAll(); } }); } }).fail(function(res) { layer.open({ type: 1 ,offset: \'auto\' ,id: \'layerDemoAuto1\' //防止重复弹出 ,content: \'<div style="padding: 20px 100px;">导入名单失败,请重试</div>\' ,btn: \'确认\' ,btnAlign: \'c\' //按钮居中 ,shade: 0 //不显示遮罩 ,yes: function(){ layer.closeAll(); } }); }); return false; }
注意,需要返回的都要存入formdata中!