Visualizzazione dei risultati da 1 a 5 su 5

Visualizzazione discussione

  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2013
    Messaggi
    61

    Problema Foreach e JQuery

    Premessa: Non so se è la sezione giusta , nel caso non lo fosse mi scuso in anticipo e ringrazio il moderatore che sposterà questa discussione nella sezione giusta.

    Argomento:
    Quello che sto realizzando è una specie di "Suddivisione per argomenti" , attualmente ho utilizzato questo codice per estrarre da db i contenuti da due tabelle:

    codice:
    $thread_qry1 = "SELECT * FROM `xt_te` , `xt_pl` WHERE na_te = te_na ORDER BY na_te";
    
                            $row1 = XenForo_Application::get('db')->fetchAll($thread_qry1);
    Questo codice non fa altro che prendere i dati dalle tabelle xt_te e xt_pl che hanno in comune un dato che come riferimento ha na_te = te_na e poi viene fatta la query tramite il sistema XenForo_Application::get('db')->fetchAll nativo di Xenforo.

    Poi ho inserito questo codice:

    codice:
            $teCurrent = '';                              
                    
                            foreach ( $row1 AS $rows1 ) {
                                
                                $idTe = $rows1['id'];
                                 $contenuto .='<div class="Prova1">'.$rows1['id'].'</div>';
                                
                                if ($teCurrent != $rows1['na_te'])
                                      {
                                        $teCurrent = $rows1['na_te'];
                                                  echo ('<h2 class="trigger01"> <div class="Button"></div></h2>');
                                                  echo ('<div class="container">'.$contenuto.'</div>'); 
                                       }
                           
                                     
                              }
    e all'inizio della pagina del head ho inserito questo codice script:

    codice:
    $(document).ready(function(){    
        $(".container").hide();
        
        
        $("h2.trigger01").css("cursor","pointer").click(function(){
            $(this).next(".container").slideToggle("slow");
        });
    
    
    });
    In questo modo quello che viene fuori è la visualizzazione di un div Button che fin quando non ci clicco sopra non mi fa vedere il contenuto del div container , ma il problema è che essendo in un foreach ovviamente la lettura del codice continua a farmi vedere solo il primo contenuto , quindi un solo id in quanto il sistema crea un solo div container che però non contiene l'elenco di tutti gli id associati a quel "button" ma solo il primo id.

    Visivamente quello che viene fuori adesso è questo

    ______________________
    CONTENITORE 1 (BUTTON - numero di ID in riferimento al CONTENITORE 1 sono 3)
    ______________________
    contenuto (div container ) ( id = 1)
    ______________________
    CONTENITORE 2 (BUTTON - numero di ID in riferimento al CONTENITORE 2 sono 4)
    ______________________
    contenuto (div container) ( id = 1)
    mentre quello che dovrebbe far vedere è questo:

    ______________________
    CONTENITORE 1 (BUTTON - numero di ID in riferimento al CONTENITORE 1 sono 3)
    ______________________
    contenuto (div container ) ( id = 1)
    ------------------------------------------
    contenuto (div container ) ( id = 2)
    ------------------------------------------
    contenuto (div container ) ( id = 3)
    ------------------------------------------
    ______________________
    CONTENITORE 2 (BUTTON - numero di ID in riferimento al CONTENITORE 2 sono 4)
    ______________________
    contenuto (div container ) ( id = 1)
    ------------------------------------------
    contenuto (div container ) ( id = 2)
    ------------------------------------------
    contenuto (div container ) ( id = 3)
    ------------------------------------------
    contenuto (div container ) ( id = 4)
    ------------------------------------------
    Non so se mi sono spiegato , sono quasi sicuro che un errore di "stesura" del codice .
    Grazie per l'aiuto.

    Aggiunta/Aggiornamento:

    Se io tolgo il div container il sistema mi restituisce esattamente quello che voglio , solo che perdo la parte "interattiva" con jquery , come posso fare a mantenere anche il movimento di apertura del div con effetto slideToggle ? O se mi suggerite un altro modo per nascondere con jquery il contenuto del div container. Grazie
    Ultima modifica di netkingZ; 04-02-2014 a 13:04

Permessi di invio

  • Non puoi inserire discussioni
  • Non puoi inserire repliche
  • Non puoi inserire allegati
  • Non puoi modificare i tuoi messaggi
  •  
Powered by vBulletin® Version 4.2.1
Copyright © 2025 vBulletin Solutions, Inc. All rights reserved.