4

我想使用 ajax 将 pdf 文件发送到服务器。但我找不到任何示例或代码

这个问题。我怎样才能得到解决方案?请帮帮我

4

2 回答 2

0

有很好的教程http://www.phpletter.com/DOWNLOAD/

阅读并理解它将对您有所帮助。

无论如何不是我的代码,但似乎是个好方法。

function ajaxFileUpload(){
    //starting setting some animation when the ajax starts and completes
    $("#loading")
    .ajaxStart(function(){
        $(this).show();
    })
    .ajaxComplete(function(){
        $(this).hide();
    });

    /*
        prepareing ajax file upload
        url: the url of script file handling the uploaded files
                    fileElementId: the file type of input element id and it will be the index of  $_FILES Array()
        dataType: it support json, xml
        secureuri:use secure protocol
        success: call back function when the ajax complete
        error: callback function when the ajax failed

            */
    $.ajaxFileUpload
    (
        {
            url:'doajaxfileupload.php', 
            secureuri:false,
            fileElementId:'fileToUpload',
            dataType: 'json',
            success: function (data, status)
            {
                if(typeof(data.error) != 'undefined')
                {
                    if(data.error != '')
                    {
                        alert(data.error);
                    }else
                    {
                        alert(data.msg);
                    }
                }
            },
            error: function (data, status, e)
            {
                alert(e);
            }
        }
    )

    return false;

}
于 2013-10-25T04:18:39.057 回答
0

您现在可以使用 javascript FormData() 对象来执行此操作。我相信它适用于除 IE9 及以下版本之外的所有应用程序。

<form>
  <input type="file" id="file" name="file">
  <button onclick="upload()">Upload</button>
</form>

和javascript..

function upload() {
  var fd = new FormData(),
      myFile = document.getElementById("file").files[0];

  fd.append( 'file',  myFile);

  $.ajax({
    url: 'http://example.com/script.php',
    data: fd,
    processData: false,
    contentType: false,
    type: 'POST',
    success: function(data){
      console.log(data);
    }
  });
}
于 2013-10-25T04:22:26.607 回答