2012-11-14 122 views
0

可能重複:
Is it possible to use Ajax to do file upload?jQuery的AJAX文件上傳不工作

我試圖上傳使用jQuery ajax.I圖像使用jQuery的裝載功能。我從firebug中檢查了所有輸入字段都被提交,除了type = file的圖像字段。

CakePhp Code 
    echo $this->Form->input('Testimonial.photo', array('type'=>'file', 'label'=>'Upload Avator')); 

Jquery Function 
    $('a[rel=save]').live('click',function(clickEvent) { 
      clickEvent.preventDefault(); 
      var url = $(this).attr('href'); 
      $("#block").load(url, $("#form :input").serializeArray(),function(){ 
       } 
      ); 
     }); 

我該如何解決這個問題?

回答

1

input type="file"元素無法使用常規jQuery Ajax進行傳輸。你應該看看新的File API和「XMLHttpRequest level 2」的結合,(不幸的是)所有現代瀏覽器都不支持。

解決方法:iframe或Flash解決方案(例如,搜索「uploadify」)。

+0

僅供參考,如果您的網站具有身份驗證功能,則Uploadify可能很難實現,因爲會話不會被其拾取並默認傳遞。 – BrettJ