Bonjour à tous,
Je me suis créé un p'tit dialog custom avec un div vide par défaut, que je rempli à mon bon vouloir (grâce a du XHR), mais selon le contexte, je voudrai modifier sa taille.
Par défaut j'ai ca :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16
| <s:div id="dialogCustom"
data-dojo-type="dijit.Dialog"
data-dojo-props="title : 'Fiche information',
draggable: false,
focused: true,
onHide: function(){
this.set('title','Fiche information');
this.reset();
destroyAllWidgets('contentCustom');
document.getElementById('contentCustom').innerHTML = '';
document.getElementById('contentCustom').refresh();
}"
cssStyle="display:none; min-width: 400px; max-width: 850px; max-height:800px; background-color: #FFF; position: fixed;">
<s:div id="contentCustom" cssStyle="max-height:425px; overflow-y: auto; overflow-x: hidden;"></s:div>
</s:div> |
destroyAllWidgets('contentCustom'); // Fonction qui détruit tous mes widget Dojo dans le div
this.reset() / document.getElementById('contentCustom').innerHTML = '' / document.getElementById('contentCustom').refresh(); // Vide mon div et réinitialise le dialog et le div
Mon problème concret est le suivant :
J'ai un appel qui ressemble à ca dans un contexte particulier :
1 2 3
| dijit.byId('dialogCustom').set('style', 'width:500px;');
document.getElementById('contentCustom').style.maxHeight = '455px';
showDialog('dialogCustom');" |
Le problème est que si je décide de ré-ouvrir un "dialogCustom" par la suite dans un autre contexte, il gardera une largeur de 500px, et son div "contentCustom" un max-height de 455px, ce qui me gène donc.
J'ai essayé de repasser des valeurs dans le "onHide" de mon dialog pour remettre le style par défaut (avec des : this.set('style', 'width : 600px') etc...) mais rien n'y fait.
Par défaut mon dialog n'a pas de width prédéfini, mais un min et max-width (il s'adaptera donc a la taille de son contenu).
Ma question est simple : comment faire pour réinitialiser complètement un dialog et que celui-ci reprenne sa config de création svp ?
Partager