2011-07-19 58 views
0

我已經搜索了這個,我不能在文件上傳中使用ajax,但我需要做的就是通過ajax處理我的文件,然後將其傳遞給我的控制器(我創建的目標文件和保存在目錄中的目標文件),所以我該怎麼處理上傳文件低谷的AJAX mootols,我已經做到這一點,沒有任何事情發生,無插件請,我需要的只是有人指導我如何處理mootools中的上傳文件?

這是我的代碼

 #f1_upload_process{ 
      z-index:100; 
      position:absolute; 
      visibility:hidden; 
      text-align:center; 
      width:400px; 
      margin:0px; 
      padding:0px; 
      background-color:#fff; 
      border:1px solid #ccc; 
     } 
     </style> 



    <p id="f1_upload_process">Loading...<br/></p> 

    <p id="result"></p> 

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

     <label for="file">Subir un archivo</label> 
     <input type="file" name="file" id="fileArchivo" /> 
     <input type="submit" name="submit" id="btnSubir" value="upload file" /> 

    <iframe name="iframUpload" id="iframeUpload" type="file" style="display:none"></iframe> 


     </form> 

mootools的阿賈克斯

window.addEvent("domready",function(){ 
    cargarIndex();         
}); 


function cargarIndex() 
{ 
    var prueboRequest = new Request({ 
    method: 'POST', 
    url: '../CONTROLLER/inicio.php', 
    onRequest: function() {}, 
    onSuccess: function(texto, xmlrespuesta){ 
    document.getElementById('subirarchivo').innerHTML= texto; 
    $('btnSubir').addEvent('click',function(){beginUploading()}); 
    }, 
    onFailure: function(){alert('Error!');} 
    }).send(); 


} 

function beginUploading(){ 

    var prueboRequest = new Request({ 
    method: 'POST', 
    url: '../Controller/ControllerSubirArchivo.php', 
    onRequest: function() {}, 
    onSuccess: function(texto, xmlrespuesta){ 
    onFailure: function(){alert('Error!');} 
    }).send(); 

I a lready搜索,但所有我所發現的是這一點,但使用jQuery,我想類似的東西:

$(function(){ 
    var btnUpload=$('#upload'); 
    var status=$('#status'); 
    new AjaxUpload(btnUpload, { 
     action: 'upload-file.php', 
     //Name of the file input box 
     name: 'uploadfile', 
     onSubmit: function(file, ext){ 
      if (! (ext && /^(jpg|png|jpeg|gif)$/.test(ext))){ 
        // check for valid file extension 
       status.text('Only JPG, PNG or GIF files are allowed'); 
       return false; 
      } 
      status.text('Uploading...'); 
     }, 
     onComplete: function(file, response){ 
      //On completion clear the status 
      status.text(''); 
      //Add uploaded file to list 
      if(response==="success"){ 
       $('<li></li>').appendTo('#files').html('<img src="./uploads/'+file+'" alt="" /><br />'+file).addClass('success'); 
      } else{ 
       $('<li></li>').appendTo('#files').text(file).addClass('error'); 
      } 
     } 
    }); 
}); 

}

+0

http://mootools.net/forge/p/uploadmanager? –

+0

謝謝,但多數民衆贊成沒有什麼,我正在尋找,當你想上傳一個文件什麼需要在JavaScript或在一個mootools AJAX多數民衆贊成我的問題,我只是想要一個消息說,該文件存儲,但我迷失在mootools,我已經搜索,但似乎沒有任何工作 –

+0

無論你最終使用的處理程序將有某種「oncomplete」類型的回調,這是你的「一切工作正常」通知的東西。 –

回答

1

由於貝爾巴托夫克里斯托夫說,沒有辦法有一個Ajax文件上傳沒有一點點現在跨瀏覽器頭痛... 我會推薦plupload項目,所以你確定它是跨瀏覽器。僞造的插件也可以做到這一點,但現在分離JavaScript文件上傳庫是一個好主意。考慮到HTML5 API的實現在很多瀏覽器上仍然存在侷限性,您可能不得不立即更新腳本...