2012-02-25 33 views
1

我有一個表格,這樣JQuery的AJAX等價形式的的提交文件

<form id="picuploadform" enctype="multipart/form-data" method="post" action=""> 

    <div class="row"> 
     <label for="fileToUpload">Select a File to Upload</label><br /> 
     <input type="file" name="fileToUpload" id="fileToUpload" /> 
    <input type="hidden" id = "picssn" name="picssn" value="qweweqwq"> 
    </div> 

    <div class="row" style="width:150px;"> 
    <input type="submit" value="Upload" /> 
    </div> 

    </form> 

當我點擊提交按鈕,我有這個網頁上PHP其間處理它就好了。用於接收文件的$ _FILES和用於讀取隱藏輸入附帶的picssn的$ _POST。但是由於Jquery mobile的問題,我現在無法使用submit或.submit()。所以我想用

$.post('myphpfile.php', {picssn:$('#picssn').value(), file: $('#fileToUpload').xxxxxxxxxxxxxxxxx }); 

改爲。但我不知道如何從文件中抓取文件並以這種方式發送。有什麼方法可以替代xxxxxxxxxxxxxx嗎?謝謝!

+0

可能相關:http://stackoverflow.com/q/166221/296889 – jeremysawesome 2012-02-25 20:28:06

回答

0

在您的表單元素,您需要禁用ajax提交,然後修復您的其他代碼。 試試這個:

<form id="picuploadform" enctype="multipart/form-data" method="post" action="#" data-ajax="false"> 

    <div class="row"> 
     <label for="fileToUpload">Select a File to Upload</label><br /> 
     <input type="file" name="fileToUpload" id="fileToUpload" /> 
    <input type="hidden" id = "picssn" name="picssn" value="qweweqwq"> 
    </div> 

    <div class="row" style="width:150px;"> 
    <input type="submit" value="Upload" /> 
    </div> 

    </form>