2009-09-23 4 views
0

J'utilise ce script (http://www.position-absolute.com/articles/jquery-form-validator-because-form-validation-is-a-mess/) pour valdate mon formulaire etc, qui a aussi une fonction de soumission.JQuery Ajax Envoyer Confirmer -> envoyer les détails

Voici le code qui envoie le formulaire à traiter:

jQuery("#adminForm_1").validationEngine({ 
    ajaxSubmit: true, 
    ajaxSubmitFile: "/index.php?option=com_database&view=tripdetails&Itemid=12&client=1&task=save", 
    ajaxSubmitMessage: "Client Trip Details Saved", 
    inlineValidation: false, 
    success: false, 
    failure: function() {} 
}); 

Mais je le code qui avertit si vous ne l'avez pas rempli tous les champs ..

jQuery("#adminForm_1").submit(function() { 

    var empty = false; 
    jQuery(":input", "#adminForm_1").each(function() { 
     empty = (jQuery(this).val() == "") ? true : empty; 
    }); 
    if(empty) { 
     var empty_ok = confirm('You have not filled out all of the fields, do you wish to continue?'); 
     return empty_ok; 
    } 

}); 

Actuellement en vous cliquez sur "Annuler" il soumet toujours le formulaire .. comment puis-je changer le code pour s'assurer que lorsque vous frappez annuler il ne soumet pas le formulaire?

Répondre

1

Si un champ est vide, il le mettra à true, puis si un champ vide n'est pas vide, il le redéfinira sur false.

vous devez vérifier si la valeur true est déjà vide ou retourner false à la première vraie affectation. ou vous pouvez compter sur l'utilisation d'un tableau d'erreurs et le peupler, voir s'il a un .length, si c'est le cas, faites le confirmer.

+0

Ok, je comprends ce que vous dites, mais je ne sais pas comment le faire .. lol – SoulieBaby