none
Jquery dialog em cima de dialog RRS feed

  • Pergunta

  • Olá,

    fiz um popUp usando o Jquery Dialog. Quando um certo botão é pressionado, por javascript eu crio uma div com um ID X e dou um .load() de uma url nessa div. Logo em seguida coloco o jquery dialog pra transformá-la em um popUp. Segue código:

    var new_id = String(Math.random()).replace('.', '');
    
    var content = "<div id='" + new_id + "'></div>";
    
    $('body').append(content);
    
    $('#' + new_id).load(target + '.html').dialog({
                modal: true,
                resizable: false,
                width: width,
                position: [(doc_width - width) / 2, 50]
            });

    Isso funciona bem. O problema é que se eu abro uma página num dialog, e nessa página eu chamo OUTRO dialog, mesmo com o modal = true, ele não bloqueia o dialog de baixo. Ele abre o popUp em cima do primeiro numa boa, e bloqueia o body, mas o primeiro popUp não é bloqueado.

    Alguém já passou por uma situação dessas ?

    Thiago

    segunda-feira, 1 de outubro de 2012 12:50

Todas as Respostas

  • Faz assim:

    Em todas as telas, envolta o conteúdo em uma DIV com id="nomedatela". (se já não houver).

    Em seguida, abra o jquey, localize a funcion .load do modal.
    Adicione um novo parâmetro (id da tela -- div) e um boleano (travar tela anterior)

    Então, cada vez que fizer "load", e for true, você pega a div que veio no parametro (que é a que você quer bloquear, e dá um

    $("#div").attr('disabled', "disabled");

    Para reativar,

    removeAttr("disabled");

    sábado, 12 de janeiro de 2013 12:28