2016-05-31 6 views
0

イムとデータがAjaxでデータをポストしようとしているが、コンソールに、私は何かなどをrecive ..キャッチされないにReferenceError:ポストCVSアヤックス

<div id='file_browse_wrapper'> 
    <input class="iconos" type="file" name="File Upload" id='file_browse' accept=".csv" /> 
</div> 
    <label id="url-archivo"><b>Selecciona tu archivo...</b></label> 
    <button class="btn btn-success" id="carga-archivo">Subir</button> 
:ファイルはこれは、データをアップロードするために私のボタンと私の入力である

が定義されていません。

これは私のjqueryの/アヤックス:

$("#carga-archivo").click(function() { 
        var fileUpload = document.getElementById("file_browse"); 
        if (fileUpload .value != null) { 
         var uploadFile = new FormData(); 
         var files = $("#file_browse").get(0).files; 
         // Add the uploaded file content to the form data collection 
         if (files.length > 0) { 
          uploadFile.append('file-'+i, file); 
          $.ajax({ 
           url: "/2/delivery/client/massive", 
           contentType: false, 
           processData: false, 
           data: uploadFile, 
           type: 'POST', 
           success: function() { 
            alert("file upload successfuly"); 
           } 
          }); 
         } 
        } 
       }); 

しかし、私は考えてPOSTされていないデータが欠落しているものです

+0

正確に言うとおりです。 'file'はどこで設定/定義しましたか? –

+0

私の入力からファイルをキャッチ – victor

+0

あなたはしません。変数 'file'は定義されていません。 –

答えて

0

filesという変数を作成しましたが、fileという変数が使用されています。あなたのコードのこの部分を変更してみてください:

var file = $("#file_browse").get(0).files; 
// Add the uploaded file content to the form data collection 
if (file.length > 0) { 
    uploadFile.append('file-'+i, file); 
    $.ajax({ 
     url: "/2/delivery/client/massive", 
     contentType: false, 
     processData: false, 
     data: uploadFile, 
     type: 'POST', 
     success: function() { 
      alert("file upload successfuly"); 
     } 
    }); 
} 

これはちょうどfilefiles変数の名前を変更し、filesを使用し一つの他の場所を変更します。

+0

@victorこれがあなたの質問に答えたなら、それを受け入れる答えの隣にあるチェックマークをクリックしてください。チェックマークの色が緑に変わり、それが受け入れられたことが示されます。ご不明な点や新しい情報がありましたら、私にお知らせください。私はその回答を更新することができます。 –