Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 12
  1. #1
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    199

    selezionare next/prev sibling con onclick

    Ciao a tutti,

    questo è il codice "semplificato":

    codice:
    <div class="sliderGallery">
    <ul class="items">
    <?php 
    $result=mysql_query("SELECT ...
    while bla bla bla
    ?> 
    <li class="list_<?php echo $cmp_cod?>"> 
    <div class="slider_img" onclick="home_expo('<?php echo $cmp_cod?>' , '<?php echo $price?>')"> <span class="home_price"> <?php echo $price . ",00 €"; ?> </span>
    </div>
    
    <?php } mysql_close(); ?>[/list]
    </div>
    la funzione home_expo mi richiama con AJAX maggiori informazioni con tanto di immagine di quel prodotto (tipica visualizzazione tipo lightbox).

    Ora ho aggiunto due freccette a questa schermata che mi appare per far si che posso passare da un[*] all'altro, con next() e prev().

    scrivendo questo:
    codice:
    [img]../images/next.png[/img]' , '<?php echo $price?>').next()"/>
    [img]../images/prev.png[/img]' , '<?php echo $price?>').prev()"/>
    funziona parzialmente, perchè, al click, mi va a prendere (entrambi) l'ultimo[*] caricato da PHP. Questo ha senso se metto le due immagini all'esterno del ciclo while, ma il problema sussiste anche se lo metto dentro al ciclo.
    Cosa e dove dovrei mettere le mani per farlo funzionare?
    Spero che sia riuscito a spiegare la situazione!!!

    Grazie in anticipo.
    Ciao

  2. #2
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Direi che è un problema php
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  3. #3
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    199
    grazie di avermi risposto, ma ritengo che con uno script JS meglio definito si possa risolvere questa situazione. Con PHP non c'è niente (x quello che la mia poca esperienza mi suggerisce) che si possa fare a riguardo.

  4. #4
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    199
    sto provando uno script del genere:

    codice:
    <script type="text/javascript" language="javascript"> 
    $(document).ready(function(){ 
    $('#home_expo_next').click(function(){ 
    $("li.list_<?php echo $cmp_cod?>").next().home_expo('<?php echo $cmp_cod?>' , '<?php echo $price?>'); 
    });
     }); 
    </script>
    con questo vorrei dirgli che, al documento caricato e al click di quel pulsante mi deve selezionare il successivo di[*] (che è univoco visto che c'è annesso il codice univoco php) e attivare la funzione home_expo con i relativi valori.
    Credo che come concetto sia giusto...ma non mi funziona.
    l'ho inserito all'interno del ciclo così che possa riconoscere le variabili php.
    Sono sulla buona strada?

    grazie!

  5. #5
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Cos'è home_expo e <?php echo $cmp_cod?>? E posta un link alla pagina pubblica cosi d'avere un quadro completo
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  6. #6
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    199
    per adesso non mi è possibile caricarlo online.
    cmq home_expo è questo, in AJAX:

    codice:
    function home_expo(cmp_cod, price) 
    { 
    if (window.XMLHttpRequest) 
    { xmlhttp=new XMLHttpRequest(); }
     else 
    { xmlhttp=new ActiveXObject("Microsoft.XMLHTTP"); } xmlhttp.onreadystatechange=function() {
     if (xmlhttp.readyState==4 && xmlhttp.status==200) 
    { document.getElementById("home_expo").innerHTML=xmlhttp.responseText; } 
    }
    xmlhttp.open("GET","../php/home_expo.php?cmp_cod="+cmp_cod+"&price="+price,true); xmlhttp.send(); }
    <?php echo $cmp_cod?> invece è un valore estratto dal database dalla funzione iniziale, mi serve per poi riprendere tutti gli altri valori nella pagina home_expo.php con ajax insieme a <?php echo $price?>

  7. #7
    Moderatore di Annunci siti web, Offro lavoro/collaborazione, Cerco lavoro L'avatar di cavicchiandrea
    Registrato dal
    Aug 2001
    Messaggi
    26,131
    Quello che hai scritto non potrà mai funzionare home_expo non è un "oggetto" jquery ma una funzione, e senza avere un quadro completo di quello che vuoi fare credo sia impossibile dare indicazioni o fare ipotesi
    Cavicchi Andrea
    Problemi con javascript, jquery, ajax clicca qui

  8. #8
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    199
    come ho scritto inizialmente il sistema funziona, il problema è che mi prende e mi fa visualizzare, al momento del click su una delle due freccie, solo l'ultimo cmp_cod e non quello precedente o successivo.
    Cmq è vero che è un problema intricato e che spiegarlo in questa maniera non è semplice da comprendere (ne tanto meno da spiegare).
    Ho rivalutato la tua prima risposta e sto provando a fare un primo step in PHP e poi la variabile che tiro fuori da qui usando next() e prev() di php la metto nella funzione onclick...in teoria (la mia) dovrebbe andare, il problema è che non riesco a creare un array semplice dai dati che estrapolo dal database per poter utilizzare next e prev...dovrei andare sul forum php e chiedere come poterlo fare!

    grazie dell'interessamento cmq.

    CIao

  9. #9
    Utente di HTML.it
    Registrato dal
    Dec 2010
    Messaggi
    3,660
    come ho scritto inizialmente il sistema funziona, il problema è che mi prende e mi fa visualizzare, al momento del click su una delle due freccie, solo l'ultimo cmp_cod e non quello precedente o successivo.
    quindi non funziona, perche la logica che stai seguendo è sbagliata

    Ho rivalutato la tua prima risposta e sto provando a fare un primo step in PHP e poi la variabile che tiro fuori da qui usando next() e prev() di php la metto nella funzione onclick..
    se devi lavorare sulla funzione onclick significa che devi lavorare sul client(browser e quindi js), non sul server(quindi niente php).
    In parole povere quello che devi fare è semplicemente salvare l'elemento corrente(li), al click recuperarlo e da li prendere il sucessivo o il precedente in base al bottone premuto. La logica è molto semplice, integrarlo nel codice che hai gia pero forse cosi semplice non lo è.

  10. #10
    Utente di HTML.it
    Registrato dal
    Sep 2012
    Messaggi
    199
    Ciao Vindav,
    innanzitutto ti ringrazio per la partecipazione.

    l'ultima frase che hai detto è perfetta...semplice, ma inserirlo qui è complicato...però non posso farne a meno!!!

    Se avete qualche idea alternativa sarò felice si valutarla!!!
    Grazie mille.

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 © 2024 vBulletin Solutions, Inc. All rights reserved.