Usamos cookies para medir audiência e melhorar sua experiência. Você pode aceitar ou recusar a qualquer momento. Veja sobre o iMasters.
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:
/applications/core/interface/imageproxy/imageproxy.php?img=http://www.solibras.com.br/rhael/sistema/telas/modal/modal1.jpg&key=e15e8600706fc7b1de24594516ef133db91b3d9c1adadbb6443a29146bd7c37b" alt="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...
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');
});
}é isso ai, só que o seletor tá errado ne?!
$('a.greybox').greybox();
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 ?
esse erro é q o greybox não ta definido. Coloque a chamada ao script corretamente, e pronto.
================================================================================
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
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.
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;
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.
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