Nascondere div con jQuery

Marcello.Fiore

Nuovo Utente
14 Giu 2016
10
1
3
35
Salve a tutti, ho un piccolo problema sto cercando di nascondere un div
Spiego brevemente: ho un form con tre campi uno input e due select, quando si scrive nel campo input mi si apre un div dove uno script php elabora i dati e restituisce i risultati in un div #a, con jQuery naturalmente alla funzione .keydown faccio mostrare il div #a dove verrano mostrati i risultati elaborati da php (sarebbero dei dati provenienti da DB) ora vorrei che se cliccassi sul link mi aprirebbe il link, se invece non si clicca ma si cambia input del form questo si nascondesse di nuovo.. diciamo che ci siamo quasi, solo che il div mi rimane sempre aperto... se imposto una funzione .focusout sul capo input non mi permette di cliccare sulla tendina che si apre.. il div #a

sapreste indicare su quale evento far nascondere il div? non ci sto arrivando...!
grazie mille, posto il codice
Codice:
$(document).ready(function(){
    $("#div-risultato").hide();
    //AL TOCCO DEI TASTI
    $("#suchen").keydown(function(){
      var dati = $("#cerca").serialize(); //recupera tutti i valori del form automaticamente
      //form invio dati post ajax
      //invio
      $.ajax({
      type: "POST",
      url: "pre-ricerca.php",
      data: dati,
      cache: false,
      processData: false,
      dataType: "html",
      success: function(msg)
        {
          $("#div-risultato").show("slow");
          $("#div-risultato").html(msg);

        },
      error: function()
        {
          alert("Chiamata fallita, si prega di riprovare...");
        }
      });//ajax
    });
    //AL TOCCO DEI TASTI
    $("#suchen").keypress(function(){
        var dati = $("#cerca").serialize(); //recupera tutti i valori del form automaticamente
        //form invio dati post ajax
        //invio
        $.ajax({
        type: "POST",
        url: "pre-ricerca.php",
        data: dati,
        cache: false,
        processData: false,
        dataType: "html",
        success: function(msg)
          {
            $("#div-risultato").show("slow");
            $("#div-risultato").html(msg);

          },
        error: function()
          {
            alert("Chiamata fallita, si prega di riprovare...");
          }
        });//ajax

    });
    $("#div-risultato").focusout(function(){
        $("#div-risultato").hide();
    });

});
 
si, ma sarebbe una tendina che si apre sotto ad un campo text di un form, praticamente sono dei suggerimenti per la ricerca... tipo un autocompletamento di google... cmq ho risolto grazie mille!
 
Salve a tutti, anche io avrei necessità di nascondere un div (si tratta di un menu supplementare in tema wordpress) la parte dello script nella pagina "funzioni del tema" è questa:
Codice:
}
 
    function block_sec_menu_mobile() {
        ?>
        <script>
            jQuery(document).ready(function(){
                jQuery('.menu-topmenu li').each(function() {
.hide("slow",function()
                    jQuery('<option />',{
                    'value':jQuery(this).find('a').attr('href'),
                    'text':jQuery(this).find('a').html()
                    }).appendTo(jQuery('#mobile-sec-menu'));
                });
            });
        </script>
        <?php
    }
le ho provate tutte. "none", "false", "hide" ma non funzionano.
probabilmente lo inserisco nel posto sbagliato. potete aiutarmi per favore? non conosco questo codice

grazie mille ragazzi!
 
Ultima modifica:
Ciao,
Codice:
jQuery('.menu-topmenu').hide();
puoi inserirlo fuori dal ciclo each();
 
Grazie! ma non ho capito benissimo. devo sostituire quella stringa con la tua? ... mi faresti una mega cortesia? potresti modificare il codice da me postato con la tua modifica? così la incollo per intero e non mi sbaglio! grazie mille
 
PHP:
function block_sec_menu_mobile() {
    ?>
    <script>
        jQuery(document).ready(function () {
            jQuery('.menu-topmenu li').each(function () {                   
                jQuery('<option />', {
                    'value': jQuery(this).find('a').attr('href'),
                    'text': jQuery(this).find('a').html()
                }).appendTo(jQuery('#mobile-sec-menu'));
            });
            jQuery('.menu-topmenu').hide();
        });
    </script>
    <?php
}
o anche cosi
PHP:
function block_sec_menu_mobile() {
    ?>
    <script>
        jQuery(document).ready(function () {
            jQuery('.menu-topmenu').hide();
        });
    </script>
    <?php
}
 

Discussioni simili