2010-12-15 12 views
0

J'essaie d'implémenter plusieurs instances de la boîte de dialogue Jquery dans le même site. Le problème est que j'ai deux cas que j'Initier avec une fonction new'able comme ceci:Avoir plus d'une boîte de dialogue Jquery et ne fermer qu'une seule instance à la fois

function Modal(param) { 
    this.modal = null;var that = this; 
    var init = funciton (param) { 
    that.setupWindow(param); 
    } 
    this.setupWindow = function (param) { 
    var selector = param.selector; 
    var params = {} // dialog options go here 
    this.modal = $(selector); 
    this.modal.dialog(params); 
    } 
} 

var f_inst = new Modal({selector: '#f_modal'}); 
var s_inst = new Modal({selector: '#s_modal'}); 

Problème: si je l'appelle f_inst.modal.dialog (« proche ») ou s_inst.modal.dialog ('close'), cette action fermera les deux instances de la boîte de dialogue.

Ces deux boîtes de dialogue utilisent deux modèles différents pour les rendre.

S'il s'agit d'un comportement par défaut dans la boîte de dialogue jquery ui, quelqu'un a-t-il une meilleure solution?

YUI 2 Le widget modal conteneur fonctionne très bien lorsque vous essayez d'avoir plusieurs instances du widget conteneur. J'essaie de trouver un modal qui offre des fonctionnalités similaires.

Merci d'avance.

-Eric

Répondre

0

Je pense que vous voulez changer cela dans tous les cas

function Modal(param) { 
    var that = this; 
    that.modal = null; 

    var init = funciton (param) { 
    that.setupWindow(param); 
    } 

    that.setupWindow = function (param) { 
    var selector = param.selector; 
    var params = {} // dialog options go here 
    that.modal = $(selector); 
    that.modal.dialog(params); 
    } 
} 

var f_inst = new Modal({selector: '#f_modal'}); 
var s_inst = new Modal({selector: '#s_modal'}); 

Je n'ai pas testé - mais je crois this.setUpWindow est liée à la fonction Modal il est un seul de, même si vous créez plusieurs instances, ils référencent le même objet/la même fonction

en câblant tout ce qui var vous obtiendrez réellement des instances séparées

Questions connexes