2009-09-21 9 views
0

J'ai une boîte de dialogue qui s'ouvre après l'envoi d'un formulaire à l'aide du plugin ajaxForm. L'ajaxForm met à jour le contenu de la boîte de dialogue.Jquery Dialog - ouverture de boîte de dialogue supplémentaire

Le problème est qu'une boîte de dialogue supplémentaire s'ouvre. Voici le code javascript:

function formSubmit(target, form, success){ 
    var formoptions = { 
     target: target, 
     success: success 
    }; 
$(form).ajaxForm(formoptions); 
} 

function createDialog(element){ 
    $(element).dialog({ 
      modal: true, 
      autoOpen: false, 
      buttons: { 
       Ok: function() { 
        $(this).dialog('close'); 
       } 
      } 
     }); 
} 

dans ma fonction de charge:

createDialog(".formresponse"); 
$(".contact_submit").click(function(){ 
    formSubmit('.formresponse', '.submitform', function(){ 
     $('.formresponse').dialog('open'); 
    }); 
}); 

Répondre

0

En fait, quelqu'un du groupe Google JQuery-Ui m'a indiqué la bonne direction. J'avais deux divs avec le même nom de classe de .formresponse dans ma page.

Je l'ai déplacé hors de la boucle php alors que c'est seulement sur la page une fois et maintenant ça marche.

Silly moi.

Oh, et c'était seulement une soumission, j'ai vérifié cela dans Firebug.

Jquery fait un bon travail d'émission de retour faux sur les boutons.

0

.contact_submit Est-ce un < input type="submit">? Je pense que peut-être en cliquant il est soumis deux fois, une fois par des moyens normaux et une fois par ajax. Essayez d'utiliser <input type="button"> à la place et vérifiez si vous avez toujours 2 boîtes de dialogue.