Normalmente, para cargar un archivo, sería un proceso de dos pasos: seleccione un archivo y luego confirme la carga. Estoy trabajando para subir una foto de perfil. Como la foto de perfil suele ser pequeña, quiero reducir el número de clics del mouse para mis usuarios al hacer que el archivo se cargue para comenzar con la selección del archivo. Sugiera maneras buenas, y quizás comunes, de lograr esto (también me gustaría aprender sus peligros, si es que hay alguno). Gracias.iniciar carga de archivo al seleccionar
Respuesta
El evento change
se activará cuando se seleccione un archivo desde un campo de carga de archivos. El valor del campo será ''
si no se selecciona ningún archivo (el campo se borra).
<form method="post" action="upload.script">
<input type="file" id="formfile"/>
<input type="submit" id="formsubmit"/>
</form>
<script type="text/javascript">
var file= document.getElementById('formfile');
var submit= document.getElementById('formsubmit');
// If scripting is available, can auto-submit the form, so no submit
// button needed.
//
submit.parentNode.removeChild(submit);
// When field is filled in with a filename, submit form
//
file.onchange= function() {
if (this.value!=='')
this.form.submit();
};
</script>
¿Es esta una buena idea? Cuestionable. Enviar automáticamente un formulario si el usuario no lo espera puede tener un impacto negativo.
Se puede usar jQuery para publicar automáticamente el archivo al cortar después de la selección ...
Problemas:
¿Qué pasa si el imposible usuario quiere elegir ese archivo pero el archivo se ha subido a la ¿servidor?
¿Qué sucede si lo anterior ocurre antes de que el archivo haya terminado de cargarse?
¿Qué tal si el usuario no hace nada y cierra la página? ¿Cuánto tiempo mantendrá el archivo
Si usa GMail, notará que tiene una solución de arrastrar y soltar para adjuntar archivos a un correo electrónico. Arrastre desde su escritorio a una región predefinida y wallah.
Si tiene compatibilidad con HTML5 para las personas que usan esto (la mayoría debería hacerlo si están actualizadas), entonces podría usar la función de arrastrar y soltar incorporada en HTML5.
intente buscar en esto: http://www.thebuzzmedia.com/html5-drag-and-drop-and-file-api-tutorial/
También podría dar algo así como una oportunidad Plupload (http://www.plupload.com/), pero que podría ser excesiva para esto. Plupload es más adecuado para archivos más grandes que necesitan animaciones de progreso y fragmentación. Sin embargo, sé que sería capaz de crear una secuencia de comandos de tal manera que la carga se inicia de inmediato y se redirige tan pronto como se completa. También podría necesitar un trabajo del lado del servidor para el que no está configurado.
- 1. no puede archivo de carga abierta al usar emacs
- 2. Carga de archivo Ajax
- 3. problema de carga de archivo
- 4. ddd se cuelga al iniciar
- 5. Carga de archivo con Tornado
- 6. Deshabilitar la carga de Visual Assist X al iniciar Visual Studio
- 7. Dotcloud: cómo cargar un archivo de copia de seguridad redis al iniciar
- 8. Cómo implementar la carga de archivo BlueQuery jQuery en ASP.NET
- 9. archivo JavaScript carga
- 10. Carga de archivo JSF 2.0
- 11. Carga de archivo devuelve nulo
- 12. Symfony2: Editar carga de archivo
- 13. FTPClient - Java, archivo de carga
- 14. ddd se cuelga al iniciar
- 15. Plupload Iniciar carga automáticamente cuando se agreguen archivos
- 16. Eclipse se detuvo aleatoriamente al iniciar
- 17. Problema al iniciar Google Navigation
- 18. MediaRecorder se bloquea al iniciar
- 19. ¡No se pudo iniciar MySQL! al iniciar XAMPP
- 20. archivo barra de progreso de carga
- 21. Xcode Error al iniciar el programa remoto
- 22. Android, NoSuchFieldError al iniciar la segunda actividad
- 23. ConfigurationManager.OpenExeConfiguration - carga el archivo incorrecto?
- 24. Carga de archivo de jQuery: ¿Es posible activar la carga con un botón de envío?
- 25. Error al iniciar sesión en C#
- 26. Django Celery se bloquea al iniciar
- 27. Diálogo de progreso al iniciar nueva actividad
- 28. Error de IIS al intentar iniciar WebMatrix
- 29. iOS iniciar imágenes tipo de archivo
- 30. Volcado de CouchDB a archivo y carga desde el archivo
Gracias por proporcionarnos su solución. En cuanto al problema que mencionaste, creo que no causaría mayor preocupación en mi caso. – tamakisquare
La llamada a form.submit() fallará en IE8 e inferior con acceso denegado. –
@Maurice:? funciona bien para mí en IE6. – bobince