I found the latest version of jQuery UI(1.10) remove the zIndex
option. And it's confirmed on the jQuery website.
It really shocked me. Please think about this:
When we have an jqgrid, and use editrow()
or addrow()
to open a edit dialog to edit something, and there are many fields inside, some of which have self-defined event, such as, when you click it, it will show another jQuery dialog to show some treeview items to chose.
Under jQuery UI 1.9 (included), you can set the jQuery dialog's zIndex
option to bigger than the jqgrid edit dialog's (jqgrid edit dialog support set zIndex
), so the jQuery dialog always be upon and could be seen and used.
Under jQuery UI 1.10, you cant set zIndex
, so the jQuery dialog is always behind the jqgrid edit dialog.
I think such scene is very common.
Why jQuery UI 1.10 remove jQuery dialog zIndex
option? How to control the z-index
order when there is more than one dialog?
If you want to apply the zIndex using jQuery as soon as you instantiate the dialog, you can do the following:
Have you tried using the "appendTo" option? Just dynamically add a wrapper with a z-index of what you need it to be, then use the id of that element as the selector in the "appendTo" argument.
http://api.jqueryui.com/dialog/#option-appendTo
Have you tried?
reference: http://api.jqueryui.com/dialog/#method-moveToTop
worked for me
Just read the change-log from jQuery UI 1.10 (together with the bug that has been filed for it):
In other words: You should property stack the elements instead of "hacking" your way to stacking using the zIndex option.
I think I understand your problem. The CSS z-index for the jQuery UI dialog is not high enough to always show above your content. Here's a quick fix: