通过AJAX传递图片

这个问题在这里已经有了答案:

  • 我怎样才能异步上传文件? 27个答案

  • $.ajax({
        type: "POST",
        url: pathname,
        data: new FormData($('#devis')[0]),
        processData: false,
        contentType: false,
        success: function (data) {
            $("#divider").html(data);
        }
    });
    

    并在$_FILES[];正常获取文件数据$_FILES[];


    你可以试试它

    <script type="text/javascript">
    $(document).ready(function() {
    $("#submit").click(function() {
      var fileInput = document.getElementById('image_input_field');
      var file = fileInput.files[0];
      var formData = new FormData();
      formData.append('file', file);
      // console.log(file);
    
      var societe = $("input#societe").val();
      var message = $("textarea#message").val();
    
          $.ajax({
            url: "ajax.php",
            type: "POST",
            data: "file="+file,
            cache: false,
    
            success: function(reponse) {
              if(reponse) {
                alert(reponse);
    
                // console.log(reponse);
                // $('#devis').trigger("reset");
              } else {
                alert('Erreur');
              }
            }
          });
     }); });
    </script>
    

    在ajax.php

    写吧

     echo 'something';
    

    正如您可能已经知道的那样,无法通过ajax调用来处理文件上传,一旦HTML5 FILE I / O API准备就绪并且可以通过主流浏览器实现,就有可能。

    您可以使用jQuery iframe发布表单插件在iframe中发布数据,以便用户体验类似于ajax调用(部分更新页面)。

    这里是链接:https://github.com/dogzworld/iframe-post-form

    描述:“这个jQuery ajax上传插件创建一个隐藏的iframe,并设置表单的目标属性以发布到该iframe,当表单被提交时,它会被发布(包括文件上传)到隐藏的iframe中,最后,该插件收集服务器对iframe的响应。“

    如前所述,您可以从服务器发送响应,并相应地在您的网页上显示更新。 必须有一个演示页面,但它现在不能正常工作。

    您也可以将其用于文件上传。

    调用示例:

    jQuery('#frmId').iframePostForm({
        json : true,
        post : function () {
            //return true or false
            return true;
        },
        complete : function (response) {
            //complete event
            console.log(response);
        }
    });
    
    链接地址: http://www.djcxy.com/p/19601.html

    上一篇: Pass an image through AJAX

    下一篇: Jquery ajax single file upload