2012-03-23 57 views
1

我想從JQuery模式中上傳圖像。形式隱藏在PHP和一旦鏈接被點擊出現的模態窗口,有一個非常簡單的形式一起,只是一個文件上傳字段

<form action="" method="post" enctype="multipart/form-data" id="uploadprofileimage" name="uploadprofileimage"> 
     <label for="image">Upload a picture of the item:</label> 
     <input type="file" name="image" id="image"> 
     </form> 

然而,當上傳按鈕被點擊的形式是序列化和發送。要嘗試解決此問題,我已回發到該頁面,並且在轉儲$ _POST和$ _FILES時數組爲空,我在哪裏出錯?當我將變量發佈到PHP時,我已經完成了發佈,但由於某種原因,我無法發佈表單!

下面是我的jQuery代碼,希望有人能幫助!感謝

$("[href='#avatar']").click(function() { 
      $("#profile-upload").dialog({ 
       title: 'Add a profile image', 
       width: 400, 
       height: 200, 

       buttons:[ 

       { 
       text: 'Upload', 
       click: function(e) { 
        e.preventDefault(); 
        var post = $("#uploadprofileimage").serialize(); 
        $.post("profiles.php", post, function(data){ 
         console.log(post); 
         console.log(data); 


        },'json'); 


       } 


       }, 

       { text: 'Close', click: function() { $(this).dialog('close');}} 



       ] 


      }); 
    }); 

回答

1

使用AJAX你不能上傳文件。但是,您可以使用模擬AJAX操作的衆多插件之一。他們通過在後臺創建iframe並通過這種方式提交數據來完成此操作。嘗試搜索jQuery文件上傳插件。

+0

非常感謝蒂姆,我想我會讓PHP處理文件上傳! – Alan 2012-03-23 22:43:47