1. java
  2. android
  3. c#
  4. .net
  5. javascript
  6. php
  7. jquery
  8. html
  9. sql

$.post e $.ajax enviando apenas uma vez

Estou estudando programação web e front-end. Fiz um site há algum tempo e agora estou reformulando ele, e estudando ao mesmo tempo! Criei um sistema de pesquisa com php e jquery, por meio de $.post. Acontece o seguinte: ao clicar no submit o jquery envia os dados para o php e retorna em uma div. Acontece que se tentar seguidamente fazer a busca novamente, os resultados não aparecem mais, nem com ajax e nem $.post. o que está acontecendo?

$("#site-search").submit(function( event ){ 
            event.preventDefault(); 
            $(".resultados").slideUp('fast');
            var dados = $(".input-busca").val() ; 

            if(dados == ''){ 
                alert('Insira algo para pesquisar'); 
            } 
            else 
            {     

                $(".esmaecer").slideDown('fast')
                $(".resultados").html("<img src='"+url+"img/load.gif'id='ajax-loader'class='ajax-loader'>");

                $(".resultados").slideDown('fast');
                $.post( url+"sections/search.php",   { busca: dados } , function( data ) {
                            $(".resultados").html( data );
                        })
            }

            $(".input-busca").val(''); 
            $('.resultados').val(''); 
            $(".search-exit").css('display','block'); 
        });


        $(".search-exit, .esmaecer").click(function( event ){ 
                event.preventDefault(); 
                $(".resultados").slideUp('fast'); 
                $(this).slideUp('fast'); 
            }
        )

E aqui o php de busca



$search = strtolower ( mysql_real_escape_string( strip_tags( stripslashes( $_POST['busca'] ) ) ) ); 

$query = mysql_query("SELECT * FROM publicacoes WHERE titulo LIKE '%$search%' OR slug LIKE '%$search%'  OR conteudo LIKE '%$search%' OR tags LIKE '%$search%' ORDER BY data DESC"); 

$count = mysql_num_rows( $query ); 

if($count <=0){ 
echo "<p class='nothing-found'>NADA ENCONTRADO! Tente ser menos específico em sua busca </p>" ;
} 
else 
    { 
    while($a = mysql_fetch_array( $query )) 
        { ?>
            <a href='<?php echo get_url().'post/?post='.$a['slug']; ?>'id='post-slug'>
                <div class='search-post-container'>
                    <h3 class='post-title-search'> 
                        <?php echo ucwords( str_replace( $search ,"<span class='bold'>".$search.'</span>', $a['titulo'] )); ?> 
                    </h3>
                    <div class='post-excerpt-search'>
                        <?php str_replace( $search ,"<span class='bold'>".$search.'</span>',custom_lenght( strip_tags ( $a['conteudo'] ),10)); ?>
                    </div>
                    <div class='footer-pub-search'>
                        <?php echo ucwords($a['categoria']) ." - ". 
                        date('d/m/y',strtotime($a['data']))." às ".date('H:i',strtotime($a['data']));  ?>
                    </div>    
                    <div class='clear'></div>
                </div>

            </a>    
            <?php     
        }
    }
  1. Você vai ver essas setas em qualquer página de pergunta. Com elas, você pode dizer se uma pergunta ou uma resposta foram relevantes ou não.
  2. Edite sua pergunta ou resposta caso queira alterar ou adicionar detalhes.
  3. Caso haja alguma dúvida sobre a pergunta, adicione um comentário. O espaço de respostas deve ser utilizado apenas para responder a pergunta.
  4. Se o autor da pergunta marcar uma resposta como solucionada, esta marca aparecerá.
  5. Clique aqui para mais detalhes sobre o funcionamento do GUJ!

1 resposta

Não é a resposta que estava procurando? Procure outras perguntas com as tags php jquery busca ajax post ou faça a sua própria pergunta.