Tengo la siguiente función JS activado por un botón:JavaScript: error ajaxSubmit
function uploadPicture() {
$("form#pictureUpload").ajaxSubmit({
data: $("form#pictureform").serialize(),
type: 'post',
url: '?action=loadpicture',
success: function(response) {
$('#div-pictures').html(response);
}
});
}
Esto funcionó perfectamente bien durante varios meses. Pero dejó de funcionar hoy en Firefox, Safari, Chrome y Opera, aunque todavía funciona correctamente en Internet Explorer.
Safari me da el siguiente error misteriosa:
Failed to load resource: cancelled ?action=loadpicture
Chrome emite casi la misma (sin : cancelled
). Opera y Firefox no muestran ningún error. La única información adicional es que los errores anteriores se producen después de que finaliza la carga del archivo y aunque el servidor genera una salida HTML como comentarios que los navegadores ignoran.
Háganme saber si tiene alguna idea de cómo solucionar esto. He estado corriendo en círculos durante horas sin siquiera acercarme a una solución: simplemente no veo errores en el código ni en los archivos de registro. ¡Muchas gracias!
No sé la respuesta, pero hay algunas ideas para investigar: -No creo que sea correcto especificar? Parm = value cuando se realiza una solicitud POST. Normalmente, cuando haces una solicitud GET, todos los parámetros que proporcionas se añaden a la URL de esta manera; cuando PUBLICA, los valores se envían como datos de formulario. Intenta usar una entrada oculta. Podría estar equivocado acerca de esto, quizás esté permitido aunque no sea un uso normal. -Parece que está publicando en la misma página donde está definido este código, ¿no está seguro de si ese es el comportamiento correcto? -¿Estás usando una versión diferente de jQuery que antes? – RMorrisey
Ninguna versión de jQuery es la misma. La única diferencia que conozco es una actualización menor de Apache y mod-php. – MrG
¿'? Action = loadpicture' funciona como antes? ¿Has intentado llamar a esta URL sincrónicamente? – dmitko