Tengo un sitio web con una carga de archivo normal <input type="file">
, POSTING los datos al backend cuando se envía el formulario.¿Cargar archivo arrastrando y soltando sin AJAX, sincrónicamente en primer plano?
Me gustaría mejorar progresivamente el formulario para que pueda colocar un archivo desde fuera del navegador en cualquier parte de la ventana gráfica (no solo en el campo de entrada del archivo, como está incorporado en algunos navegadores) para cargarlo.
Si el formulario no se envía automáticamente no es importante. Entonces, si arrastrar y soltar solo selecciona el archivo en el campo del archivo, sin iniciar una carga, está bien. No necesito soporte para múltiples archivos. No es necesario que muestre el progreso de la carga, las miniaturas o cualquier otra cosa elegante.
Sé que hay libs de JS que soportan cargas de arrastrar y soltar, pero todas parecen cargarse a través de AJAX. Podría hacer eso, pero luego tendría que modificar el backend y el frontend para manejar los errores de carga, redirigir y mostrar los mensajes correctos en caso de éxito, y así sucesivamente.
Quiero una mejora progresiva que no requiera ningún cambio de back-end. Debería ocurrir de forma síncrona utilizando el formulario en la página. JS está bien, siempre que la carga suceda "en primer plano". El AJAX sincrónico no funcionaría, por supuesto.
En Chrome, al menos, puede configurar los archivos de una entrada en el archivo de caída: http://jsfiddle.net/qMmPr/. ¿Es eso lo que buscas? – pimvdb
@pimvdb ¡Eso es hermoso! Exactamente lo que quería. Y olvidé mencionar que como esto es para un servicio interno, solo Chrome está bien. Si escribe eso como respuesta (además del comentario), lo marcaré como aceptado. –