Ir para conteúdo

POWERED BY:

Arquivado

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

daorahein

JQuery de conteúdo carregado com .load() não funciona

Recommended Posts

Olá, sou nova aqui no iMasters. Estou desenvolvendo uma aplicação em ASP e tenho uma página de upload que utiliza o plugin uploadfy, até aí tudo bem... quando termino o upload, no evento onQueueComplete, faço o carregamento de uma página dentro de uma div através do evento .load()
'onQueueComplete' : function(queueData) {

$('#iframe_cad').load('posts_imagens.asp?id=<%= album_id %>', function () {
$(this).fadeIn(5000);                                    
});


A página carrega corretamente, mas o problema está quando eu tento executar um JQuery que está dentro da página posts_imagens.asp.
Andei pesquisando e vi que realmente há problemas em executar JQuery dentro de páginas carregadas via evento .load(), mas não consegui entender direito como solucionar o problema. Segue o código da página posts_imagens.asp

<body>
<div class="col-xs-12" id="loopimg">
<%
'essa consulta funciona normalmente
Set conn_p = Server.CreateObject("ADODB.Connection")
conn_p.Open dsn_sql

sql = "SELECT imagem_id,imagem FROM posts_imagens WHERE album_id = "& request.querystring("id") &" ORDER BY imagem_id DESC"
set rs = conn_p.execute(sql)

do while not rs.eof
imagem = rs("imagem")
id = rs("imagem_id")
%>
<!--Esse conteúdo é gerado dinamicamente, o span com classe "image" é o que será removido ao clicar no botão de classe btnRemover-->
<span class="image">
    <div class="col-xs-3" style="margin:5px; height:100px; background: url('../arquivos/posts/imagens/<%= imagem %>') center no-repeat; background-size:contain;">
        <button title="Remover" value="<%= id %>" type="button" class="btnRemover btn btn-sm btn-danger pull-right" style="margin-right:0"><i class="fa fa-minus"></i></button><span id="remover"></span>
    </div>
</span>
<%
rs.movenext
loop
set conn_p = nothing
set rs = nothing
%>
<br /><br />
</div>
<script src="http://ajax.googleapis.com/ajax/libs/jquery/2.0.2/jquery.min.js"></script>
<script src="js/jquery-ui-1.10.3.min.js" type="text/javascript"></script>
<script>
$(function () { function removeCampo() {
     $("button.btnRemover").unbind("click");
     $("button.btnRemover").bind("click", function () {
         i=0;
        $("#loopimg span.image").each(function () {
              i++;
        });
        var idRemover = $(this).val();
        $("#remover").load("posts_imagens_excluir.asp?id="+idRemover);
        $(this).parent().remove();
    });
}
removeCampo();
});
</script>

</body>


Quando eu carrego apenas a página posts_imagens.asp o script funciona corretamente, mas quando ela é carregada dentro de uma outra página via .load() quando eu clico no botão .btnRemover nada acontece. Já tentei remover a requisiçao do Jquery e mesmo assim não funciona. Alguém pode me ajudar? creio que meu erro esteja na tag script da página posts_imagens.asp.

Compartilhar este post


Link para o post
Compartilhar em outros sites

Tenta trocar essa parte:

$(function () { function removeCampo() {
     $("button.btnRemover").unbind("click");
     $("button.btnRemover").bind("click", function () {
         i=0;
        $("#loopimg span.image").each(function () {
              i++;
        });
        var idRemover = $(this).val();
        $("#remover").load("posts_imagens_excluir.asp?id="+idRemover);
        $(this).parent().remove();
    });
}
removeCampo();
});

por esta:

      function removeCampo() {
            $("button.btnRemover").unbind("click");
            $("button.btnRemover").bind("click", function() {
                i = 0;
                $("#loopimg span.image").each(function() {
                    i++;
                });
                var idRemover = $(this).val();
                $("#remover").load("posts_imagens_excluir.asp?id=" + idRemover);
                $(this).parent().remove();
            });
        }
        $(function() {
            removeCampo();
        });

Compartilhar este post


Link para o post
Compartilhar em outros sites

Então, não funcionou, continua da mesma forma, eu clico e ele não executa a function. Engraçado é que só a página posts_imagens funciona, mas quando é carregada dentro da div a function para de funcionar


Tava testando aqui e uma hora funcionou, aí fui fazendo testes e percebi que só funciona a partir do segundo upload que faço e a página posts_imagens é carregada novamente pelo evento .load(). A página não é atualizada

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.