2010-07-29 15 views
0

J'ai un formulaire assis dans un modal Thickbox dans un projet Symfony. J'essaie de faire en sorte que lorsque l'utilisateur soumet le formulaire, le modal se ferme, le formulaire soumet et la page parente se rafraîchit pour montrer les nouvelles données (enregistrées dans la base de données). J'ai ajouté à la fonction tb_remove()Formulaire dans Thickbox Refresh parent sur Envoyer

parent.location.reload(1);

Cela ressemble, il actualise la page, mais en réalité, ce n'est pas. Je ne sais pas si j'ai besoin de retarder la fonction, mais quand j'aurai des erreurs de syntaxe. Toute aide est très appréciée.

Répondre

0

juste nécessaire pour déplacer le

parent.location.reload(); 

dans la fonction tb_remove() (en fait créé une fonction distincte pour cela), et le mettre dans la fonction de fadeOut. la fonction finale ressemble à ceci:

function tb_removeAdminModal() { 
    $("#TB_imageOff").unbind("click"); 
    $("#TB_closeWindowButton").unbind("click"); 
    $("#TB_window").fadeOut(1000,function(){ 
    $('#TB_window,#TB_overlay,#TB_HideSelect').trigger("unload").unbind().remove(); 
    parent.location.reload(); 
    }); 
    $("#TB_load").remove(); 
    if (typeof document.body.style.maxHeight == "undefined") {//if IE 6 
    $("body","html").css({height: "auto", width: "auto"}); 
    $("html").css("overflow",""); 
    } 
    document.onkeydown = ""; 
    document.onkeyup = ""; 

    return false; 
}