Ir para conteúdo

POWERED BY:

Arquivado

Este tópico foi arquivado e está fechado para novas respostas.

dataset

[Resolvido] Modal junto com $('#div').load()

Recommended Posts

Prezados, boa tarde;

 

Tenho uma página (liscon.asp) que usa essa função pra carregar o dados numa div:

function fDetalhes(vVal){
$('#fDet'+vVal).load('/paratodos/consultas/detalhesentidade.asp?codEnt='+vVal, function() {
    $('#fDet'+vVal).toggle('slow');
});
}

 

Veja a imagem:

modal1.jpg

 

Vou explicar:

Os dados na parte cinza vem do arquivo dadosentidades.asp, eu uso o .load() pra puxar. Ao clicar na seta verde ao lado das combos o arquivo documementos.asp deveria abrir numa modal.

 

Estou pensando em usar o GreyBox.

 

Agora vem a dúvida, onde eu coloco o GreyBox.js e as funções que vão dentro do $(document).ready(function () ?

 

Coloco no liscon.asp ou no detalhesentidade.asp ?

 

Doideira né ? Já testei as duas formas e não deu certo.

 

Se eu colocar no detalhesentidade.asp o link não vai achar o greybox.js, e se eu colocar no liscon.asp ele não vai enchergar o class="greybox" que tá no <a href> na setinha verde.

 

Espero que tenham compreendido...

 

O link (setinha verde) vem pelo .load()..

 

Pelo amor... dá uma força...

Compartilhar este post


Link para o post
Compartilhar em outros sites

assim q fizer o load, você atrela o greybox, entendeu ?

 

veja:

http://wbruno.com.br/2011/08/22/usando-lightbox-em-pagina-carregada-ajax/

 

 

 

os scripts você deixa na pagina liscon.asp

Compartilhar este post


Link para o post
Compartilhar em outros sites

W.B... me diz uma coisa...

 

Pra fazer o atrelamento... veja que tenho uma função ali $('a.greybox'), eu tenho que chamar ela dentro da função fDetalhes ? Pois é ela que usa o .load()...

 

Eu coloquei uma linha dentro da fDetalhes, tentei atrelar com a função a.greybox... mas ta errado. Não funfa.

 

O que eu devo fazer ?

 

Terei mais funções para atrelar, como o maskedinput pra formatar uma data __/__/__ pois eu retorno um input no detalhesentidade.asp e o cara que formata a data está no liscon.asp

 

Como eu atrelo ?

 

$(document).ready(function () {

   $('.camposelectdata').mask('99/99/9999');

   $('a.greybox').click(function(){
       var t = this.title || $(this).text() || this.href; 
       GB_show(t, this.href, 470, 600); 
       return false;
   }); 

});

function fDetalhes(vVal){
$('#fDet'+vVal).load('/paratodos/consultas/detalhesentidade.asp?codEnt='+vVal, function() {
	$('#a.greybox').greybox();
	$('#fDet'+vVal).toggle('slow');
});
}

Compartilhar este post


Link para o post
Compartilhar em outros sites

é isso ai, só que o seletor tá errado ne?!

 

$('a.greybox').greybox();

Compartilhar este post


Link para o post
Compartilhar em outros sites

TypeError: $("a.greybox").greybox is not a function

 

Eu ja tinha tentado com esse seletor... mas não funfou tambem...

 

O que tenho que fazer ?

Compartilhar este post


Link para o post
Compartilhar em outros sites

esse erro é q o greybox não ta definido. Coloque a chamada ao script corretamente, e pronto.

Compartilhar este post


Link para o post
Compartilhar em outros sites

================================================================================

você sabe de um outro site igual a esse seu http://wbruno.com.br/2011/08/22/usando-lightbox-em-pagina-carregada-ajax/ pra que eu possa ver e assim resolver meu problema ?

 

Não to sabendo como fazer a chamada... se você tiver um outro exemplo posso concluir ainda essa noite.

 

Abração.

 

================================================================================

 

 

Vi que nesse site http://forum.imasters.com.br/topic/449379-funcao-java-script-em-pagina-via-ajax/ você recomendou usar .live() ...

 

-> não traga nenhuma tag script com ajax

-> deixe todo o js q for usar na página q já está carregada

-> use a função .live() para atrelar dinamicamente os eventos.

-> espere o conteudo ser carregado, para depois instanciar os plugins.

 

 

É isso que eu devo fazer ?

 

Abraços

 

================================================================================

 

Posso usar o método .live() conforme esse exemplo ? Tem alguma diferença ? Achei no ... http://wbruno.com.br/2011/03/18/metodo-live-jquery/

 

Outra dúvida.... como eu trabalho com o maskedinput ? $('.camposelectdata').mask('99/99/9999');

 

Obrigado pela ajuda

Compartilhar este post


Link para o post
Compartilhar em outros sites

o live não se aplica ao teu caso, pq você está trabalhando com plugins.

 

é oq eu te falei aqui nesse tópico mesmo. Não tem muito mais pra dizer.. chame as tags scripts dos plugins na página q já está carregada, e no callback do .load() atrele os plugins q precisar. É isso.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Não consegui...

 

Fiquei até agora tentando e nada... você pode me ajudar com o código ?

 

Não sei fazer.

 

Se me ajudar, ficarei grato.

 

Att;

Compartilhar este post


Link para o post
Compartilhar em outros sites

Exatamente 05:38 da madruga e solução encontrada.

 

Obrigado pela ajuda... mais um problema resolvido.

 

O esforço compensa. you can close this topic.

 

Valeu.

Compartilhar este post


Link para o post
Compartilhar em outros sites

×

Informação importante

Ao usar o fórum, você concorda com nossos Termos e condições.