Как обработать файл загрузки в mootools - PullRequest
0 голосов
/ 20 июля 2011

Я уже ищу по этому поводу и не могу использовать ajax при загрузке файлов, но все, что мне нужно сделать, это обработать мой файл через ajax, а затем передать его моему контроллеру (где я создал объектный файл и сохранить в каталоге),так, как я могу обработать файл загрузки через ajax mootols, я уже делаю это и ничего не происходит, никаких плагинов, пожалуйста, мне просто нужно, чтобы кто-то направил меня

это мой код

       #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 ajax

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();

Я уже ищу, но все, что я нашел, это только с 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');
            }
        }
    });
});

}

1 Ответ

1 голос
/ 10 января 2012

Как сказал Димитар Кристофф, ни один способ загрузить ajax-файл без небольшой головной боли между браузерами ... Я бы порекомендовал проект plupload, чтобы вы были уверены, что это кросс-браузер. Плагин из кузницы также может сделать свое дело, но в наши дни хорошей идеей является разделение библиотеки загрузки файлов javascript. Учитывая, что реализация HTML5 API все еще является частичной во многих браузерах, вам, возможно, придется вскоре обновить скрипт…

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...