Skip to main content

Search and Top Navigation

#5649 closed bug (duplicate)

Opened May 24, 2010 02:14AM UTC

Closed October 24, 2012 08:03PM UTC

Dialog: multiple modal dialog zindex conflicts

Reported by: L_K_W Owned by:
Priority: major Milestone: 1.10.0
Component: ui.dialog Version: 1.8.1
Keywords: overlay Cc:
Blocked by: Blocking:
Description

Look at the following code in the ui.dialog file:

$(document).bind($.ui.dialog.overlay.events, function(event) {
// stop events if the z-index of the target is < the z-index of the overlay
    return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ);
});

The value of '$.ui.dialog.overlay.maxZ' will be changed if a second modal dialog opend and this will cause the events handler return false. For example, if you click a radio on the first dialog to open a new second dialog, this raido will never be checked.

I think we should use a tmp var saved before the bind operation.

Attachments (0)
Change History (5)

Changed September 07, 2011 12:49PM UTC by scottgonzalez comment:1

keywords: overlay reuse couplingoverlay

Changed October 11, 2012 09:02PM UTC by scottgonzalez comment:2

milestone: TBD1.10.0

Changed October 15, 2012 09:46PM UTC by petersendidit comment:3

status: newopen
summary: overlay reuse coupling problemDialog: multiple modal dialog zindex conflicts

Changed October 23, 2012 12:00AM UTC by jzaefferer comment:4

description: Look at the following code in the ui.dialog file: \ $(document).bind($.ui.dialog.overlay.events, function(event) { \ // stop events if the z-index of the target is < the z-index of the overlay \ return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ); \ }); \ \ The value of '$.ui.dialog.overlay.maxZ' will be changed if a second modal dialog opend and this will cause the events handler return false. For example, if you click a radio on the first dialog to open a new second dialog, this raido will never be checked. \ \ I think we should use a tmp var saved before the bind operation. Look at the following code in the ui.dialog file: \ \ {{{ \ $(document).bind($.ui.dialog.overlay.events, function(event) { \ // stop events if the z-index of the target is < the z-index of the overlay \ return ($(event.target).zIndex() >= $.ui.dialog.overlay.maxZ); \ }); \ }}} \ \ The value of '$.ui.dialog.overlay.maxZ' will be changed if a second modal dialog opend and this will cause the events handler return false. For example, if you click a radio on the first dialog to open a new second dialog, this raido will never be checked. \ \ I think we should use a tmp var saved before the bind operation.

Changed October 24, 2012 08:03PM UTC by scottgonzalez comment:5

resolution: → duplicate
status: openclosed

Duplicate of #8172.Closing as duplicate of the newer ticket because the description in the newer ticket is much better and it contains a test case.