Opened 14 years ago

Closed 14 years ago

Last modified 10 years ago

#3652 closed bug (notabug)

Troubles with synchronous AJAX and ui.dialog in IE7

Reported by: hyperion Owned by:
Priority: major Milestone:
Component: ui.dialog Version: 1.5.2
Keywords: AJAX IE7 Cc:
Blocked by: Blocking:


Dialog not shown in IE7 when you use AJAX in synchronous mode (async: false). In FF 3 all ok.


<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" 
	<script src=""></script>
				autoOpen: false,
				modal: true,
				height: 50,
				width: 400,
				resizable: false,
				draggable: false,
				overlay: { 
					opacity: 0.5, 
					background: "black" 
		function doAjax() {
			// lock screen			
			jQuery("#example").dialog( "open" );
			var html = jQuery.ajax({
				type: 'POST',
				url: '/cgi-bin/',
				async: false,
				dataType: "html",
				cache: false,
				complete: function(obj, textStatus){
					// unlock screen after load
					jQuery("#example").dialog( "close" ); 
  <link rel="stylesheet" href="" type="text/css" media="screen" title="Flora (Default)">
<script type="text/javascript" src=""></script>
<script type="text/javascript" src=""></script>
<script type="text/javascript" src=""></script>
<script type="text/javascript" src=""></script>

	<input type="button" size="10" name="fl_do" onclick="doAjax()" value="get" />
	<pre id="content"></pre>

<div id="example" class="flora" title="This is my title">I'm in a dialog!</div>



use strict;
use warnings;

use CGI qw(:standard);

my $tm = localtime();

print header();
print qq(<html>
	<h1>Test data.</h1>

Change History (2)

comment:1 Changed 14 years ago by Scott González

Resolution: invalid
Status: newclosed

This is just how browsers work; it's a byproduct of being single threaded. You'll need to use a setTimeout to let the browser do a refresh after you open the dialog.

comment:2 Changed 10 years ago by Scott González

Milestone: TBD

Milestone TBD deleted

Note: See TracTickets for help on using tickets.