Update: As of jQuery UI 1.8, the working solution (as mentioned in the second comment) is to use:
width: 'auto'
Use the autoResize:true option. I’ll illustrate:
<div id="whatup">
<div id="inside">Hi there.</div>
</div>
<script>
$('#whatup').dialog(
"resize", "auto"
);
$('#whatup').dialog();
setTimeout(function() {
$('#inside').append("Hello!<br>");
setTimeout(arguments.callee, 1000);
}, 1000);
</script>
Here’s a working example:
http://jsbin.com/ubowa