Problema com o jquery

13/02/2014

0

PHP

Galera alguém pode me ajudar...
O problema é o seguinte, quando eu abro meu site o mesmo lista 10 publicações, quando eu clico sobre ela o eu uso o jquery para recuperar o id num alert.
No final da página tem um botão "ver mais" ele faz um post do ultimo id listado e então lista mais 10 publicações, porem quando eu listo essas novas publicações o jquery não funciona mais :(
Alguém, pode me ajudar?
Paulo Sérgio

Paulo Sérgio

Responder

Posts

13/02/2014

William

Paulo por gentileza poste o código onde ocorre o erro!!!
Responder

13/02/2014

Paulo Sérgio

esse é o código jquery, lembrando que eu já uso o document.ready

	//PAGINAÇÃO DE PUBLICAÇÕES
	$("#verMaisp").click(function(){
		var dds = $(this).attr('class');
		
		$("#verMaisp span").hide();
		$(".loadPagination").fadeIn("fast");
		
		$.post(local+"includes/paginacao.php", {dds:dds}, function(chamaPgs){
			$("#postagemPagi").append(chamaPgs).slideDown("slow");
			$("#verMaisp span").fadeIn("fast");
			$(".loadPagination").hide();
		});
	});
Responder

13/02/2014

William

Paulo posta o código do alert() é simples mas ajuda a ter uma visão mais ampla do seu problema!!!
Responder

13/02/2014

Paulo Sérgio

Ai tipo quando retorna os dados da paginação essa parte aqui não funciona

esse cod, pega o id da publicação para que eu possa trabalhar
o alert funciona normal nas demais publicações, mais não funciona nas que vieram da paginação

	$(".lp").click(function(){
		var post = $(this).attr("id");
		
		$.post("acao.php", {post:post}, function(retorno){
                        alert('sucesso');
		});
		
	});


Responder

13/02/2014

William

Bom Paulo já desconfio o que seja, mas para confirmar posta o fonte HTML da página com as publicações q funcionam e as que não funcionam!!!
Responder

13/02/2014

Paulo Sérgio

Esse html é onde recebe as postagens dentro da div postagens,
quando eu click em listar mais... ele retorna os novos posts na div postagemPagi e quando isso acontece nao consigo executar nada com essas postagens que vieram
<div id="postagens"></div>

<div id="postagemPagi"></div>

<div id="timeline">	
    <div id="verMaisp" class="<?php echo $p_id; ?>">
    	<div class="loadPagination"><img src="style/img/load-pagination.GIF" /></div>
        <span>Listar mais publicações</span>
    </div>
</div>
Responder

13/02/2014

William

Paulo esse código não ajudou muito, mas aparentemente vc está chamando o alert() no evento OnClick da classe '.lp', estou achando que quando as novas postagens são carregadas os elementos não possuem essa classe para ser disparado o evento em questão, por isso pedi o código da postagens q funcionam e também as que não funcionam.
Responder

13/02/2014

Paulo Sérgio

Entendi tipo mais nao to usando o onclick
as postagens são assim

<div id="post" class="<?php echo $p_id; ?>">
Conteúdo
</div>


Quando eu clico dentro dela eu chamo no jquery assim
$("#post").click(function(){
   var id = $(this).attr('class');
   alert(id);
});


e nessa hora que ta o problema :(
Responder

14/02/2014

Paulo Sérgio

Alguém?
Responder

14/02/2014

Paulo Sérgio

Fiz aqui uma ilustração simples do meu problema
Segue o código, quando vc clica na li ela exibe o id, mais quando vc lista mais e clica nas novas li's, elas não executam nada

index.php
<!doctype html>
<html>
<head>
<meta charset="utf-8">
<title>Documento sem título</title>
<script type="text/javascript" src="jquery.js"></script>
<script type="text/javascript">
	$(document).ready(function(){
		
		$('li').click(function(){
			var id = $(this).attr('id');
			alert(id);
		});
		
		$("#verMais").click(function(){
			$.post("dados.php", {parametro:'1'}, function(chamaPost){
				$("ul").append(chamaPost);
			});
		});
		
	});
</script>
<style>
body{width:500px; margin:40px auto 0;}
ul{margin-bottom:20px;}
li{list-style:none; padding:8px 0; font-family:Arial, Helvetica, sans-serif; font-size:14px; font-weight:bold; border-bottom:1px solid #ccc; cursor:pointer;}
li:hover{background:#ededed;}
#verMais{width:100px; margin:0 auto 0; cursor:pointer; border-radius:5px; text-align:center; padding:10px 0; background:#CCC; font-family:Arial, Helvetica, sans-serif; font-size:14px; font-weight:bold;}
</style>
</head>

<body>
<ul>
	<li id="1"><?php echo 'Primeiro'; ?></li>
	<li id="2"><?php echo 'Segundo'; ?></li>
	<li id="3"><?php echo 'Terceiro'; ?></li>
	<li id="4"><?php echo 'Quarto'; ?></li>
	<li id="5"><?php echo 'Quinto'; ?></li>
</ul>
<div id="verMais">Ver Mais</div>
</body>
</html>


dados.php
<?php
echo '<li id="'.date("YmdHis").'">'.date("YmdHis").'</li>';
?>
Responder

14/02/2014

Paulo Sérgio

Resolvido
usei o seguinte
.live('click', function
Responder

15/02/2014

William

Encerrando o tópico!!
Responder

Assista grátis a nossa aula inaugural

Assitir aula

Saiba por que programar é uma questão de
sobrevivência e como aprender sem riscos

Assistir agora

Utilizamos cookies para fornecer uma melhor experiência para nossos usuários, consulte nossa política de privacidade.

Aceitar