IE no pasar sobre el éxito en función de AJAXFORM
-
10-10-2019 - |
Pregunta
He escrito esta función ajaxform con éxito una función que está siendo llamado a sumiting la forma. El ajaxform funciona IMPRESIONANTEMENTE en cualquier navegador que no sea Internet Explorer. No puedo entender por qué IE no está pasando la función.
AjaxForm:
function setupAjaxForm(form_class, updateStatus){
var form = '.'+form_class;
var form_action = $(form).attr('action');
var form_url = form_action+"ajax/";
var submitOptions = {
url : form_url,
type : 'POST',
dataType : 'json',
success : function(json) {
var results = json.results;
alert(results);
if(results == "success"){
updateStatus(json);
}else{
alert(" FAIL ");
}
}
};
$(form).ajaxForm(submitOptions);
}
Función de éxito:
function addProductCartStatus(json){
alert(" Entered for jquery ");
}
Función de llamada
$(document).ready(function(){
$('.addto_cart').click(function(){new setupAjaxForm('add_cartForm',addProductCartStatus);});
});
Solución
esta respuesta se dirige principalmente a su último comentario
Internet Explorer es más rígida en algunos casos. result = "success"
esta línea como se ha mencionado es incorrecto y convierte el resultado en una cadena con la palabra éxito en ella y siempre es cierto lo que siempre actualizaciones
También se recomienda su añadir un error:function(){}
en su llamada AJAX
Otros consejos
if(result = "success")
En caso de ser
if(result == "success")
Y usted debe utilizar "{" para su caso
if(result == "success") {
updateStatus(json);
} else {