Javascript 如何在rails5.1.6中使用AJAX上传图像

Javascript 如何在rails5.1.6中使用AJAX上传图像,javascript,jquery,ruby-on-rails,Javascript,Jquery,Ruby On Rails,我正在使用Rails 5.1.6开发一个小站点,上传图片时遇到了一些问题。我需要使用AJAX上传,我通过搜索google找到了一些答案,但我还没有成功。我使用的是Rails 5.1.6和使用过的Rails表单标记,其中包括file_字段。我想用AJAX上传从文件浏览器中选择的图像。 //html.erb中的f.file_字段将编译为 //您可以手动构造FormData,参数逐个参数: var fileInput=document.querySelector('forminput[type=fil

我正在使用Rails 5.1.6开发一个小站点,上传图片时遇到了一些问题。我需要使用AJAX上传,我通过搜索google找到了一些答案,但我还没有成功。我使用的是Rails 5.1.6和使用过的Rails表单标记,其中包括file_字段。我想用AJAX上传从文件浏览器中选择的图像。

//html.erb中的f.file_字段将编译为
//您可以手动构造FormData,参数逐个参数:
var fileInput=document.querySelector('forminput[type=file]');
var attachment=fileInput.files[0];
var formData=new formData();
formData.append('email','Your email');
append('attachment',attachment,'filename.jpg');
//在jQuery中,您可以这样发送:
$.ajax({
url:“/profile/upload\u image”,
类型:“POST”,
beforeSend:function(xhr){xhr.setRequestHeader('X-CSRF-Token',$('meta[name=“CSRF-Token”]')).attr('content')),
数据:“data=“+formData,
成功:功能(数据){
...
}

});你可以试试这个谢谢,我已经用这种方法试过了,我已经解决了这个问题。强烈推荐你。