Skip to main content

Search and Top Navigation

#5523 closed bug (fixed)

Opened April 16, 2010 04:50PM UTC

Closed June 07, 2011 02:34PM UTC

Dialog overlay bug for nested dialogs

Reported by: w4x Owned by:
Priority: major Milestone: 1.8.7
Component: ui.dialog Version: 1.8
Keywords: dialog overlay Cc:
Blocked by: Blocking:
Description

info: http://stackoverflow.com/questions/2637327/jquery-ui-modal-dialogs

reproduce: http://jsbin.com/otama

Steps to reproduce:

1. create a dialog (dialog) by clicking on the button

2. create another dialog (dialogA) by clicking on the "create" button inside first dialog

3. close dialogA

4. repeat steps 2-3

5. overlay of the first dialog has been disappeared

Attachments (0)
Change History (5)

Changed May 08, 2010 08:42AM UTC by watanabe comment:1

jQuery UI 1.8 uncompressed version

jquery.ui.dialog.js

Problem:

line 174(dialog destroy), 204(dialog close)

self.overlay.destroy();

line 724(overlay destroy)

this.oldInstances.push(this.instances.splice($.inArray($el, this.instances), 1)[0]);

"duplicate overlay.destroy()" makes "instances & oldInstances in $.ui.dialog.overlay" broken.

Workaround-A:

line 724(overlay destroy)

var index = $.inArray($el, this.instances);
if (index >= 0) this.oldInstances.push(this.instances.splice(index, 1)[0]);

Workaround-B:

line 204(dialog close)

self.overlay.destroy(); self.overlay = null;

Changed June 30, 2010 10:43PM UTC by womp comment:2

I can duplicate this in 1.8.2. Very frustrating. Thanks for the workaround!

Changed January 13, 2011 01:33AM UTC by scottgonzalez comment:3

milestone: → 1.9

Changed June 07, 2011 02:11PM UTC by adovenmuehle comment:4

Using the latest jQuery UI (1.8.13) this bug appears to be fixed. See http://jsbin.com/otama/38 (Updated the original example to use the latest jQuery UI)

Changed June 07, 2011 02:34PM UTC by scottgonzalez comment:5

milestone: 1.91.8.7
resolution: → fixed
status: newclosed