Question

J'ai écrit cette fonction ajaxform avec une fonction de succès qui est appelé sumiting la forme. Le ajaxform fonctionne impressionante dans un navigateur autre que IE. Je ne peux pas comprendre pourquoi IE ne passe pas la fonction.

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);
        }

Fonction succès:

function addProductCartStatus(json){
    alert(" Entered for jquery ");
}

Fonction appel

$(document).ready(function(){
    $('.addto_cart').click(function(){new setupAjaxForm('add_cartForm',addProductCartStatus);});
});
Était-ce utile?

La solution

cette réponse va surtout à votre dernier commentaire

Internet Explorer est plus raide dans certains cas. cette result = "success" ligne comme mentionné est faux et convertit le résultat en une chaîne avec le succès de mot et est toujours vrai il toujours des mises à jour

aussi son recommandé d'ajouter un error:function(){} sur votre appel ajax

Autres conseils

if(result = "success")

doit être

if(result == "success")

Et vous devez utiliser "{" pour votre si

if(result == "success") {
   updateStatus(json);
} else {
Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top