Javascript 使用文件上传的Ajax

Javascript 使用文件上传的Ajax,javascript,html,ajax,upload,Javascript,Html,Ajax,Upload,我正在创建用于发送邮件的邮件页面。发送前我需要附上一些文件。如何使用AJAX实现这一点?最初我需要将这些文件存储在服务器中,然后我必须发送邮件。这些操作在单个发送按钮中完成 我希望您知道如何正常上传。使用ajax调用单击按钮时,调用上载/读取和更新文件。您必须发送本地系统文件路径作为输入,然后响应应包含服务器中的路径或错误。如果没有错误,请使用响应更新附件链接。检查以下问题: 您应该在DOM中动态创建一个隐藏的iframe,并将上载表单的目标设置为此iframe。别忘了将form方法设置

我正在创建用于发送邮件的邮件页面。发送前我需要附上一些文件。如何使用AJAX实现这一点?最初我需要将这些文件存储在服务器中,然后我必须发送邮件。这些操作在单个发送按钮中完成

我希望您知道如何正常上传。使用ajax调用单击按钮时,调用上载/读取和更新文件。您必须发送本地系统文件路径作为输入,然后响应应包含服务器中的路径或错误。如果没有错误,请使用响应更新附件链接。

检查以下问题:


您应该在DOM中动态创建一个隐藏的iframe,并将上载表单的目标设置为此iframe。别忘了将form方法设置为POST

您可以一次完成上传和消息字段填充


您应该明确地为您选择的javascript库检查执行此操作的就绪组件。

查看下面发送文本数据和附加多文件的代码段。
content type='multipart/form data'
由浏览器自动设置,文件名也自动添加到
filename
FormData参数中(服务器可以轻松读取)

异步函数sendmail(){ 设formData=new formData(); 让msg={message:emailText.value}; append(“email”,JSON.stringify(msg)); […attachment.files].map((file,i)=>formData.append(“file”+i,file)); 试一试{ 等待获取('your/api/upload/email',{method:'POST',body:formData}); 警报(“已发送电子邮件!”); }捕获(e){ 警报(“电子邮件发送问题”); } }






在此代码段中,API不存在,因此将引发异常,但您可以在以下位置查看您的请求:
chrome控制台>网络选项卡
,以防您需要基本的Ajax参考,