首页 > 解决方案 > 如何使用ajax请求上传文件

问题描述

在 HTML 中

 <form action="file.php" data-url="file.php" id="myform" method="post"  enctype="multipart/form-data">

<input type="file" name="imgProj"  accept="image/*"  id="imgProj"  class="file-pos">

<input
  id="mdn_email"
  type="text"
  name="email"
  class="form-control"
  placeholder="Enter Email ">





<div class="col-4">
    <button type="submit" id="btn_save" class="btn btn-primary btn-block">Save</button>
</div>

在javascript中

  $('#myform').on('submit', function(event){
   event.preventDefault();



// var id = $(this).data("id");
var url_1 = $('#myform').data("url"); 
var data = $("#myform").serialize();


 $.ajax({
    url: url_1, // the endpoint
    method: "POST", // http method
    data: data,
    success:function(dataResult)
    {

        var dataResult = JSON.parse(dataResult);

        if(dataResult.status==1){

          toastr.success(dataResult.msg );

           $("#id").val(dataResult.data_id[0]["id"])

        }else if(dataResult.status==2){

          toastr.success(dataResult.msg);
           $("#id").val(dataResult.data_id[0]["id"])


        }

       // $('#user_data').find("tr:gt(0)").remove();

      },
        error: function () {
            console.log('it failed!');
        }


   })

  });

文件未在 ajax 请求中发送

如果可能的话,我需要填写数据部分吗?这是正确的方法吗?我只将文件发布到服务器端。

我一直在谷歌搜索,但我发现是一个插件,而在我的计划中我不想使用它。至少目前是这样。

标签: javascripthtmljquery

解决方案


推荐阅读