2009-05-18 6 views
18

J'essaie de modifier la largeur d'une boîte de dialogue JQuery après son initialisation. Voici mon initialisation:Comment redimensionner la largeur d'une boîte de dialogue Jquery après l'initialisation

$(function() { 
$("#dialogContainer").dialog({ 
title: 'Some title', 
resizable: false, 
bgiframe: true, 
overlay: { opacity: 0.3, background: "white" }, 
position: [200, 200], 
autoOpen: false, 
height: 150, 
width: 'auto' 
modal: true, 
buttons: { 
    'ok': function() { 
    $(this).dialog('close'); 
    } 
} 

});

});

Et c'est ce que je fais pour changer la largeur de celui-ci dans une autre fonction:

$("#dialogBox").dialog('option','width',700); 

Mais cela ne fonctionne pas. La largeur de la boîte de dialogue correspond à la largeur du paragraphe qui y est affiché en premier. Étais-je supposé faire autre chose?

Voici le code html pour la boîte de dialogue:

<div id = 'dialogContainer'> 
    <p id = 'message'></p> 
</div> 
+0

Aucun de ces a votre réponse? http://stackoverflow.com/search?q=resize+jquery+dialog – cgp

+4

Non, je les ai déjà connus avant – Draco

+0

Est-ce juste que vous utilisez "#dialogBox" au lieu de "#dialogContainer"? – vwfreak

Répondre

9

Assurez-vous que vous utilisez ui.resizable.js et ui.resizable.css

2

Essayez ceci:

$("#dialogID").data("width.dialog", 160); 
2
$("#dialogID").css("width", 160); 
-1
$("#dialogweb").dialog({width:'90%'}); 
+0

La question a déjà une réponse valide, et elle n'était pas liée à l'utilisation incorrecte de l'argument width pour jQuery UI Dialog. –

2

ICI EST COURTE SOLUTION, mais souven C'est seulement pour un dialogue prédéfini.

$("#dialog").dialog({minHeight: 300,minWidth:500}); 
2

initialiser le dialogue avec l'option largeur spécifiée: La largeur de la fenêtre est en pixels.

$("#dialogBox").dialog({ width: 500 }); 

obtenir ou définir l'option largeur, après l'initialisation:

// getter 
var width = $("#dialogBox").dialog("option", "width"); 

// setter 
$("#dialogBox").dialog("option", "width", 500); 

Source: http://api.jqueryui.com/dialog/

0

Cela fonctionne pour moi. Le point est de redimensionner après ouvrir:

$('#dialogContainer'). 
    dialog('open'). 
    dialog('option', 'width', 'auto'). 
    dialog('option', 'height', 'auto'); 

la version jQuery dans mon cas est 1.11:

> Query.fn.jquery 
> "1.11.1" 
Questions connexes