Estoy haciendo una llamada ajax con jQuery. La llamada ajax funciona bien en IE 7, pero FireFox 3 siempre realiza una actualización de página completa al hacer esta llamada. La llamada ajax es POSTing a un método de página ASP.NET.jQuery's ajax está causando una actualización de página completa en FireFox
¿Hay algún problema en jQuery o simplemente me falta alguna configuración?
$.ajax({
async: false,
type: "POST",
url: "Default.aspx/DoSomething",
data: "{" + parms + "}",
contentType: "application/json; charset=utf-8",
dataType: "json",
cache: false,
success: function(data) { succesfulPost(data); },
error: function(XMLHttpRequest, textStatus, errorThrown) { errorPost(textStatus, errorThrown); }
});
La llamada se realiza desde un evento html button onclick. Intenté el 'retorno falso'; en el método que está haciendo esta llamada ajax, pero la actualización completa en FireFox continúa.
He intentado configurar async = true, pero parece que no funciona. FireFox simplemente continúa y no espera a que el servidor devuelva una respuesta. FireFox (en js) en realidad está generando un error en la llamada ajax. Como puede ver arriba, la función de error está definida y esto se activa cuando establezco async = true.
Guardaría async = true y depurar desde allí. ¿Tienes Firebug instalado? Si es así, abra Firebug, haga clic en la pestaña "Net" y vea a qué se llama cuando hace clic en el botón. Debería ver la solicitud de Default.aspx/DoSomething y cualquier parámetro que se pase. Ve si hay rareza allí. – Carl