Ver Mensaje Individual
  #6 (permalink)  
Antiguo 19/08/2015, 15:50
ocp001a
Colaborador
 
Fecha de Ingreso: mayo-2008
Ubicación: $MX['VZ']['Xalapa']
Mensajes: 3.005
Antigüedad: 16 años
Puntos: 528
Respuesta: subir archivo con javascript puro

Cita:
Iniciado por andresbetancourt Ver Mensaje
disculpa ocp001a

filereader según lo que leo, se usa para mostrar la imagen en la interfaz grafica al usuario, para darle la sensación de que se esta subiendo.

No exactamente.

Mediante FileReader es posible mostrar la imagen, pero no es la única finalidad.

Te mostraré una parte de un código que tengo:

Código Javascript:
Ver original
  1. function subir(){
  2.     var i=document.getElementById('fileUp-input');
  3.  
  4.     if(window.FileReader){
  5.         for(var j=0;j<i.files.length;j++){//como mi input file es múltiple, recorro sus elementos (archivos) que pueden ser varios
  6.             var reader = new FileReader();//instanciamos FileReader
  7.             reader.onloadend = (function(f){//creamos la función que recogerá los datos
  8.                 return function(e){
  9.                     var content = e.target.result.split(",",2)[1];//obtenemos el contenido del archivo, estará codificado en Base64
  10.                     enviarArchivo(f.name,content);le paso a una función el nombre del archivo y su contenido. Esta función puede pasar el contenido por ajax u otro medio al servidor
  11.                 }
  12.             })(i.files[j]);
  13.             reader.readAsDataURL(i.files[j]);//
  14.         }
  15.     }
  16. }

Código HTML:
Ver original
  1. <input type="file" id="fileUp-input" onchange="subir()" multiple>

En realidad este código es sólo una pequeña parte de mi gestor de archivos, que incluye varias validaciones pero para que te des una idea creo que es suficiente.

Como verás dentro de la variable content recoges el contenido del archivo, éste lo puedes enviar directamente a una petición ajax, a un webservice, etc.