Ir para conteúdo

Arquivado

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

maubiasotto

[Resolvido] recarregar ou chamar .js em ajax

Recommended Posts

Fala galera, tudo beleza?

 

Já tentei presquisar aqui e no Google, mas o problema que não sei bem como pesquisar, vou tentar explicar para vocês.

 

Fiz um formulário dinamico aonde tem o botão 'Adicionar' e 'deletar' campos.

 

Fiz uma innerHTML aonde puxa dados de um arquivo por httpresquet. Até ai tudo bem tá funcionando normal.

 

Mas como a página HTML é foi carregada e chamou o arquivo .js ele formata só o que já tem no formulário fixo.

 

Exemplo do formulario atual(fixo):

 

<form>

Nome:

e-mail:

data( ele formata assim "00/00/000" automatico porque o id dele é "id='data'", então ele reconhece e coloca essa mascara, se eu colocar mais campos e colocar o id data ele formata assim).

 

Mas quando eu clico em adicionar ele copia esse dados mas o campos 'data' não vem com essa mascara, ele fica como um campo normal sem mascara, já tentei colocar o <script type="text/javascript" src="js/mascara.js"></script> dentro da página que carrega via httprequest mas não da certo.

 

Resumindo, quero que os campos que carrega pelo adicionar mantem a formatação das mascara que tem no campo fixo.

 

Bom é isso, valeu!

</form>

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma função que possa ser chamada ao final do carregamento do conteúdo. Só não esqueça de direcionar para os elementos desse conteúdo específico, pois senão irá duplicar os eventos para campos já existentes.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Crie uma função que possa ser chamada ao final do carregamento do conteúdo. Só não esqueça de direcionar para os elementos desse conteúdo específico, pois senão irá duplicar os eventos para campos já existentes.

 

Você pode me dar um exemplo?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Vou passar um exemplo usando jQuery:

 


function mascara()
{
    // seu código para máscara
}

jQuery.ajax(
{
    url: "test.html",
    complete: function(XMLHttpRequest, textStatus)
    {
        //após colocar o conteúdo na tela chama a função para máscara
        mascara();
    }
});

Compartilhar este post


Link para o post
Compartilhar em outros sites

Mas quando eu clico em adicionar ele copia esse dados mas o campos 'data' não vem com essa mascara, ele fica como um campo normal sem mascara,

 

você está usando javascript puro ?

coloque o evento no meio do html: <input type="" onkeypress...

 

ai na hora de fazer o innerHTML, você já vai ter o evento atrelado ao objeto..

 

está usando jQuery ?

então, use o método .live(), para atrelar dinamicamente a função que você precisa, no evento do elemento que você quer.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Galera, to quase lá!

 

Agora tá funcionando a chamada de JS na página chamada pelo Ajax.

 

Mas acredito que por chamar a função de novo ta dando conflito, estou chamando assim:

 

$(document).ready(function() {

 

$(".tooltip").easyTooltip();

 

})

 

 

Teria um jeito de cancela a anterior e chamar de novo desse jeito que eu fiz?

Compartilhar este post


Link para o post
Compartilhar em outros sites

Fiz um jeito aqui que deu certo, criei uma class para cada vez que adiciono um campo por request

 

$(".tooltip").easyTooltip();

$(".tooltip1").easyTooltip();

$(".tooltip2").easyTooltip();

$(".tooltip3").easyTooltip();

 

Assim pelo menos não tá dando o erro.

 

Obrigado a todos que me responderão!

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.