Estoy experimentando con el complemento Blueimp's jQuery-File-Upload, que a juzgar por el demo parece muy prometedor.¿Por qué el complemento jQuery-File-Upload de Blueimp no genera devoluciones de llamada?
que es muy fácil de implementar:
var $uploadButton = $("#fileop-upload");// <input type="file" id="fileop-upload" [etc] />
$uploadButton.fileupload({
url : "//domain/path/to/receive-uploaded-files"
});
Los archivos seleccionados se cargan bien sin actualizar la página como se esperaba, pero por supuesto con una configuración mínima así el usuario no recibirá ninguna notificación. Aquí es donde las devoluciones de llamada del complemento serían útiles.
De acuerdo con la documentación, hay dos formas de definir las devoluciones de llamada. Por ejemplo, la add
evento (que se activa siempre que se selecciona un archivo para la carga) se puede añadir en el objeto configuración original como esto:
$uploadButton.fileupload({
add : addFileListener,
url : "//domain/path/to/receive-uploaded-files"
});
o alternativamente:
$uploadButton.bind("fileuploadadd", addFileListener);
Sin embargo he encontrado que solo el primer enfoque funciona, el segundo no hace nada.
Es aún más curioso que no hay otros servicios repetidos - especialmente progress
y start
- parece estar disparando no importa lo que les unen:
$uploadButton.fileupload({
add : addFileListener,
progress : progressListener,
start : startListener,
url : "//domain/path/to/receive-uploaded-files"
});
o
$uploadButton.fileupload({
add : addFileListener,
url : "//domain/path/to/receive-uploaded-files"
});
$uploadButton.bind("fileuploadprogress", progressListener");
$uploadButton.bind("fileuploadstart", startListener");
tengo el funciones de oyente referidas definidas, y el código no informa ningún error o advertencia.
¿Cuál es la explicación del error del método .bind
y por qué los oyentes progress
o start
nunca se activan?
estoy en el mismo punto de combates con las devoluciones de llamada Subió blueimp, tratando de implementar un componente de Flash-golpeado-estilo swfUpload exclusivamente para manejar el diálogo de selección de archivo para agregar la selección de múltiples archivos a IE. – nathanchere
Solo por curiosidad, ¿puedes confirmar qué versiones de jQuery y de cargador estás utilizando? Estoy usando jQ 1.5.2 y la versión 4.4.2 del complemento de carga. – nathanchere
He utilizado las versiones más recientes y recién descargadas de jQuery y el complemento de carga. De todos modos, me he alejado de este complemento en este momento y he desarrollado una solución basada exclusivamente en File API (http://blog.new-bamboo.co.uk/2010/7/30/html5-powered-ajax-file -uploads) que solo funciona con FF4 +, Chrome y Safari, pero afortunadamente esto es aceptable para mis propósitos ahora. – Wabbitseason