Estoy tratando de implementar una función de carga de archivos AJAX en mi proyecto. Estoy usando jQuery para esto; mi código envía los datos usando AJAX. También quiero implementar una barra de progreso de carga de archivos. ¿Cómo puedo hacer esto? ¿Hay alguna forma de calcular cuánto se ha cargado para poder calcular el porcentaje cargado y crear una barra de progreso?
jquery
file-upload
progress-bar
Eddard Stark
fuente
fuente
Respuestas:
Nota: Esta pregunta está relacionada con el complemento de formulario jQuery . Si está buscando una solución jQuery pura, comience aquí . No existe una solución general de jQuery para todos los navegadores. Entonces tienes que usar un complemento. Estoy usando dropzone.js , que tiene una alternativa fácil para los navegadores más antiguos. El complemento que prefiera depende de sus necesidades. Hay muchas buenas publicaciones comparativas por ahí.
De los ejemplos :
jQuery:
html:
tienes que diseñar la barra de progreso con css ...
fuente
He hecho esto solo con jQuery:
fuente
fileuploaddata
?fileuploaddata
.He usado lo siguiente en mi proyecto. Puedes intentarlo también.
fuente
mira esto: http://hayageek.com/docs/jquery-upload-file.php Lo encontré accidentalmente en la red.
fuente
Si está utilizando jquery en su proyecto y no desea implementar el mecanismo de carga desde cero, puede usar https://github.com/blueimp/jQuery-File-Upload .
Tienen una API muy agradable con selección de archivos múltiples, soporte de arrastrar y soltar, barra de progreso, validación y vista previa de imágenes, soporte de dominio cruzado, cargas de archivos fragmentados y reanudables. Y tienen scripts de muestra para múltiples idiomas de servidor (nodo, php, python y go).
URL de demostración: https://blueimp.github.io/jQuery-File-Upload/ .
fuente
Aquí hay un uso más completo de jquery 1.11.x $ .ajax ():
fuente
Esto resolvió mi problema
fuente
La respuesta de Kathir es excelente, ya que resuelve ese problema con solo jQuery. Solo quería hacer algunas adiciones a su respuesta para trabajar su código con una hermosa barra de progreso HTML:
Aquí está el código HTML de la barra de progreso, utilicé Bootstrap 3 para el elemento de la barra de progreso:
fuente
JavaScript:
Estilos:
fuente