2010-12-02 18 views
1

私はこの質問に感謝したいと思います。jQueryファイルをアップロードし、通常の形式で送信します

私は現在、jQuery Form Plugin + Validationを使用しています。ファイルがアップロードされたら

しかし、私が達成しようとしていますが、

1で、次のステップ

2に操作するための一時ファイルをアップロードし、に行くために、通常、フォームを送信次のステップ(新しいファイル)。

だから私はこれを達成する方法を100%確信しています。私は現在このコードを使用しています。

$("#fileUpload").validate({ 
     submitHandler: function(form) { 

      $(form).ajaxSubmit({ 
       beforeSubmit: function() { 
        $('input').attr("disabled", true); 
        $("#uploadResponse").show('slow'); 
        $('#uploadResponse').append("<img src='images/icons/ajax-loader.gif' />"); 
       }, 
       success: function(responseText, statusText, xhr, form) { 
        $('input[type=submit]').attr("disabled", false); 
        $('input[type=file]').attr("disabled", true); 
       }, 
       error: function (responseText, statusText, xhr, form) { 
        alert("Oops... Looks like there has been a problem."); 
       } 
      }); 
     } 
    }); 

そして、私のフォームのための

<div id="uploadResponse" style="display: none;"> File Uploading, this can take a few minutes... </div> 

<form action='page.ImportContacts2.php' name="mergeCSV" id="fileUpload" method="post" enctype="multipart/form-data" > 
     File: <input id="getCSV" name="getCSV" class="required" type="file"> 

     Delimiter Type: 
     <select id="delimiter" name="delimiter"> 
      <option value="1" selected="selected">Comma</option> 
      <option value="2">Tab</option> 
     </select> 

     Enclosure Type: 
     <select id="enclosure" name="enclosure"> 
      <option value="1" selected="selected">Double Quotes (")</option> 
      <option value="2">Single Quotes (\')</option> 
     </select> 

     <button type="submit" name="SubmitCSV" id="SubmitCSV" value="SubmitCSV" class="csvCol3Button buttonSmall">Upload File</button> 

</form> 

答えて

1

単純な答え:あなたはAJAXを介してファイルをアップロードすることはできません。あなたは別のページにフォームを提出してそこから行く必要があります。

その他:技術的には可能ですが、これは嫌です。それは、iframeを作成し、それを介してファイルを提出することです。いずれにせよ、あなたはポストバックを持たなければなりません、あなたはXMLHttpRequestオブジェクトを使うことはできません。

quick google searchを実行すると、これを行うプラグインが見つかります。

+0

現在、私はフォームの提出にこれを使用しています: – Justin

+0

** http://jquery.malsup.com/form/#file-uploadこれはファイルのアップロードに適しています。しかし、それはファイルがアップロードされた後に起こっていることです....私はファイルがアップロードされた後、別のページを読み込む必要があると思います、同じページではない... – Justin

関連する問題