2016-05-05 9 views
0
$('#formName').on('submit', function(e){ 
    e.preventDefault(); 
    $.ajax({ 
     url: "file.php", 
     type: "POST", 
     data: new FormData(this), 
     contentType: false, 
     cache: false, 
     processData: false, 
     beforeSend: function(){ 
      // do something 
     }, 
     uploadProgress: function(event, position, total, percentComplete){ 
      // do something 
     } 
    }) 
    .done(function(data){ 
     // do something 
    }) 
    .fail(function(data){ 
     // do something 
    }) 
}); 

が動作していない)& uploadprogressの()関数は全く機能しません。問題を理解するのを手伝ってください。コード構造が間違っているか、このコード内でいくつかのものが欠けているかもしれません。 JSのような参照FOuploadProgess()実際のデータ/文がbeforeSend(次に処理される場合、上記のコードで

+0

"$( '#formName')の直後に警告を表示するにはon '(submit'、function(e){" Firebugやその他のブラウザデバッガを使って、 – yeppe

+0

@yeppe上記のコードでは、uploadProgress()関数だけが起動していない場合、それはうまくいきます。 –

答えて

0

を参照してくださいあなたに私の質問に答えたすべての人に感謝し、私は本当に感謝しています。さて、コーディングとテストの後、テストとコーディング、そしてそれ以降...私は自分自身の問題に対する解決策を思いつきました。そして機会として、私はそれを皆さんと共有したいと思います。 uploadProgress.ajax() methodparameterされていないので、私はそれを非常に最初のスニペットを使用しようとしていたとして、それを使用することはできません - ので、ここでそのまず

  1. 最初のもの::です。
  2. アップロード/ダウンロードなど何らかの作業を行うためにuploadProgressを使用したい場合はどうすればよいですか。したがって、質問に対する答えは内のXMLHttpRequest()をすべて処理するxhr: function()です。

この情報がどのような場合にも役立つことを願っています。 - 偉大な日を持っているD:

YES

場合は、RATEにこの答えを行います!

0

は、まず第一enter link description here

$(function() { 
 

 
    var bar = $('.bar'); 
 
    var percent = $('.percent'); 
 
    var status = $('#status'); 
 

 
    $('form').ajaxForm({ 
 
     beforeSend: function() { 
 
      status.empty(); 
 
      var percentVal = '0%'; 
 
      bar.width(percentVal); 
 
      percent.html(percentVal); 
 
     }, 
 
     uploadProgress: function(event, position, total, percentComplete) { 
 
      var percentVal = percentComplete + '%'; 
 
      bar.width(percentVal); 
 
      percent.html(percentVal); 
 
     }, 
 
     complete: function(xhr) { 
 
      status.html(xhr.responseText); 
 
     } 
 
    }); 
 
});
<form action="file-echo2.php" method="post" enctype="multipart/form-data"> 
 
    <input type="file" name="myfile"><br> 
 
    <input type="submit" value="Upload File to Server"> 
 
</form> 
 

 
<div class="progress"> 
 
    <div class="bar"></div > 
 
    <div class="percent">0%</div > 
 
</div> 
 

 
<div id="status"></div>

+0

ありがとうございます.Jquery Form Pluginは私にとっては解決策ではありません。 –

関連する問題