Fiddle Full Screen Example
I use jQuery dialog to open tables. Some of them have a large amount of text and they tend to be too long and go way off the screen. How can I make the dialog wider if the table is too long like the first one in the fiddle? I've tried width:'auto'
but it seems to just occupy the entire screen.
HTML:
<button class='label'>Click</button><div class='dialog'><p><table>.....</table></div>
<button class='label'>Click</button><div class='dialog'><p><table>.....</table></div>
Javascript:
$(document).ready(function(){
$('.label').each(function() {
var dialogopen = $(this).next(".dialog");
dialogopen.dialog({width:'auto',autoOpen: false,modal: true,
open: function(){
jQuery('.ui-widget-overlay').bind('click',function(){
dialogopen.dialog('close');
})
}
});
$(this).click(function(){
dialogopen.dialog('open');
return false;
}
);
});
});
Syntax: $( ". selector" ). dialog({ width : 120 });
$(function() { $("#dialog-form"). dialog({ autoOpen: false, maxWidth:600, maxHeight: 500, width: 600, height: 500, modal: true, buttons: { "Create": function() { $(this). dialog("close"); }, Cancel: function() { $(this). dialog("close"); } }, close: function() { } });
You can use class 'modal-dialog' and change the width. You can change the width in success function of Ajax call.
Below is how I achieved a responsive jQuery UI Dialog. To do this, I added a new option to the config - fluid: true , which says to make the dialog responsive. I then catch the resize and dialog open events, to change the max-width of the dialog on the fly, and reposition the dialog.
I'd suggest adding width
and maxWidth
to your dialog options. I don't know what your design looks like, but try something like this, for example:
dialogopen.dialog({
autoOpen: false,
modal: true,
open: function(){
jQuery('.ui-widget-overlay').bind('click',function(){
dialogopen.dialog('close');
});
},
width: "90%",
maxWidth: "768px"
});
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With