Questo sito utilizza cookies solo per scopi di autenticazione sul sito e nient'altro. Nessuna informazione personale viene tracciata. Leggi l'informativa sui cookies.
Username: Password: oppure
Javascript - Passaggio variabili di tipo get ...
Forum - Javascript - Passaggio variabili di tipo get ... - Pagina 2

Pagine: [ 1 2 ] Precedente | Prossimo
Avatar
giocala88 (Normal User)
Expert


Messaggi: 248
Iscritto: 23/04/2008

Segnala al moderatore
Postato alle 16:42
Lunedì, 11/03/2013
Quello che volevo fare l'ho già fatto io. Ho postato pure il codice nel caso in cui servisse a qualcuno e sinceramente non ho capito cosa vuoi dire  con  "Insomma, non capisco questi cambiamenti. Se ciò che vuoi fare è quello che ho detto sopra, posso farti un esempio". Comunque non c'è bisogno di fare esempi di alcun tipo, perché come ho già detto ho risolto, grazie anche ai tuoi consigli che mi hanno illuminato.
In pratica questo script:

- Apre un div senza refresh della pagina;
- al div in questione è associato una pagina php, grazie alla quale posso prelevare il parametro $_GET e lavorarci con esso;

Mi è sufficiente. Volevo una cosa del genere, quindi questa discussione può essere chiusa per quanto mi riguarda e ti ringranzio ancora per l'interessamento :)

PM Quote
Avatar
Qwertj (Dev Team)
Guru


Messaggi: 678
Iscritto: 30/05/2011

Segnala al moderatore
Postato alle 17:45
Martedì, 12/03/2013
Ma perchè ti ostini a usare location.search quando puoi semplicemente passare il valore a una funzione?
Ufficio complicazione affari semplici

PM Quote
Avatar
giocala88 (Normal User)
Expert


Messaggi: 248
Iscritto: 23/04/2008

Segnala al moderatore
Postato alle 17:53
Martedì, 12/03/2013
Fammi un esempio allora. Ti ripeto che sono alle prime armi con javascript e se ci sono metodi più semplici e migliori del mio che ben venga.
Ma ho bisogno di un esempio per capire cosa c'è che non va nel mio codice. Grazie

PM Quote
Avatar
ZioCrocifisso (Member)
Pro


Messaggi: 135
Iscritto: 06/03/2013

Segnala al moderatore
Postato alle 22:34
Martedì, 12/03/2013
http://ziocrocifisso.altervista.org/uploads/example/

dati.php:
Codice sorgente - presumibilmente Delphi

  1. if (!empty($_GET['id'])) {
  2.         //Qui ci dovrebbe stare il codice che ottiene il contenuto di una certa div
  3.         //La roba sotto non è fatta di commenti, è il rilevatore che da il linguaggio sbagliato
  4.         echo "Div con id " . $_GET['id'];
  5.         echo "<p>Blablablablablablablabla</p>";
  6. } else if (!empty($_GET['links'])) {
  7.         //Al posto di questo andrebbe messo il codice che printa la lista di links
  8.         for ($i = 1; $i < 15; $i++) {
  9.                 echo '<a href="javascript:visualizza(' . $i . ');">Apri ' . $i . '</a>';
  10.                 echo '<br /><div style="display: none" id="div' . $i . '"></div>';
  11.         }
  12. }




index.html:
Codice sorgente - presumibilmente Php

  1. <!DOCTYPE html>
  2. <html>
  3.         <head>
  4.                 <script type="text/javascript">
  5.                         function scarica(url) {
  6.                                 var xhr = new XMLHttpRequest;
  7.                                 xhr.open("GET", url, false);
  8.                                 xhr.send();
  9.        
  10.                                 if (xhr.status == 200) {
  11.                                         return xhr.responseText;
  12.                                 }
  13.                         }
  14.  
  15.                         function links() {
  16.                                 document.body.innerHTML = scarica("dati.php?links=1");
  17.                         }
  18.  
  19.                         function visualizza(id) {
  20.                                 var sdiv = document.getElementById("div" + id);
  21.  
  22.                                 if (sdiv.style.display == 'none') {
  23.                                         sdiv.style.display = 'block';
  24.                                 } else {
  25.                                         sdiv.style.display = 'none';
  26.                                 }
  27.  
  28.                                 if (sdiv.innerHTML == "") {
  29.                                         sdiv.innerHTML = scarica("dati.php?id=" + id);
  30.                                 }
  31.                         }
  32.                 </script>
  33.                 <style type="text/css">
  34.                         div {
  35.                                 border: solid black 2px;
  36.                         }
  37.                 </style>
  38.         </head>
  39.         <body onload="links();">
  40.        
  41.         </body>
  42. </html>



Ovviamente è solo un esempio fatto velocemente, non devi sostituire il codice, devi capirlo (e sopratutto, non devi usare la modalità sincrona come ho fatto io).

EDIT: Il tag CODE non funziona correttamente. Non si può specificare manualmente il linguaggio?

Ultima modifica effettuata da ZioCrocifisso il 12/03/2013 alle 22:41
PM Quote
Avatar
Qwertj (Dev Team)
Guru


Messaggi: 678
Iscritto: 30/05/2011

Segnala al moderatore
Postato alle 23:22
Venerdì, 15/03/2013
ZioCrocifisso ha scritto quello che volevo scriverti
Basta passare il parametro direttamente alla funzione, senza magheggiare con le variabili globali

PM Quote
Avatar
giocala88 (Normal User)
Expert


Messaggi: 248
Iscritto: 23/04/2008

Segnala al moderatore
Postato alle 10:43
Lunedì, 18/03/2013
ottimooooooooo ...e se volessi lavorare con solo un div per volta? Ad esempio, ho 3 div che chiamo div1, div2, div3.
Apro il div1 e visulizzo il contenuto. Ora però vorrei che all'apertura del div2 il contenuto del div1 scomparisse, lasciando posto al contenuto del div2 ..e così per gli n div
Comunque grazie mille, siete stati molto gentili :)  

PM Quote
Avatar
ZioCrocifisso (Member)
Pro


Messaggi: 135
Iscritto: 06/03/2013

Segnala al moderatore
Postato alle 13:50
Lunedì, 18/03/2013
Quando si clicca, prima di visualizzare la nuova div:
Codice sorgente - presumibilmente Delphi

  1. var divs = document.getElementsByTagName("div");
  2.  
  3. for (i in divs) {
  4.         if (/^div[0-9]+$/.test(divs[i].id)) {
  5.                 divs[i].style.display = "none";
  6.         }
  7. }


PM Quote
Avatar
giocala88 (Normal User)
Expert


Messaggi: 248
Iscritto: 23/04/2008

Segnala al moderatore
Postato alle 17:04
Lunedì, 18/03/2013
Posso dire che sei un genio??? Sei un genio.
Grazie di tutto soprattutto perché ho imparato veramente un sacco di cose. :k:

PM Quote
Pagine: [ 1 2 ] Precedente | Prossimo