Visualizzazione risultati 1 fino 15 di 15

Discussione: Javascript su option e compatibilità browser

  1. #1
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito Javascript su option e compatibilità browser

    Ciao a tutti, devo fare in modo che la scelta eseguita all'interno di una lista aggiorni
    automaticamente la lista successiva, l'ho fatto con uno script ma funziona solo su firefox.
    su opera safari chrome ie non va.

    Per esempio :

    lista A : frutta, verdura, frutta secca.
    lista B : SE FRUTTA : mele pere banane

    potete aiutarmi ? ho provato varie soluzioni, anche facendo una funzione che legga
    il valore della prima lista, e poi faccia un semplice refresh del link pagina con la specifica
    della lista A ma non va ... o_ò non so che inventarmi...

  2. #2
    Guest

    Predefinito

    Prova a postare il codice usato e vediamo che errori commetti.

    Oppure descrivi quello che hai fatto, quello che ottieni e quello che invece dovrebbe accadere.

  3. #3
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito

    questo è l'ultimo codice che ho provato, l'ho provato a creare il più semplice possibile per evitare di commettere errori nel javascript.


    Codice HTML:
    onClick="window.open('./?m=./form/societaNuova.html&sigla=<?php echo $provincia['sigla']; ?>&provincia=<?php echo $provincia['provincia']; ?>','_parent');
    Codice PHP:

    <select name="select" class="obbligatorio" >
    <option value="<?php echo @$_GET['provincia'];?>" selected="selected"><?php echo @$_GET['provincia'];?></option>
    <?php
    $sql
    =('SELECT * FROM tRegioni ORDER BY id_regione ASC');
    $query=mysql_query($sql);
    while(
    $regioni=mysql_fetch_array($query)){ ?>
    <optgroup label="<?php echo $regioni['regione']; ?>">
    <?php $sql=('SELECT * FROM tProvince WHERE id_regione='.$regioni['id_regione'].' ORDER BY id_provincia ASC');
    $subquery=mysql_query($sql);
    while(
    $provincia=mysql_fetch_array($subquery)){ ?>
    <option value="<?php echo $provincia['provincia']; ?>" onClick="window.open('./?m=./form/societaNuova.html&sigla=<?php echo $provincia['sigla']; ?>&provincia=<?php echo $provincia['provincia']; ?>','_parent');">
    <?php echo $provincia['provincia']; ?>
    </option>
    <?php } ?>

    </optgroup>

    <?php } ?>

    </select>
    Ultima modifica di araim : 27-02-2012 alle ore 13.38.24

  4. #4
    Guest

    Predefinito

    Prima di guardare il resto del codice, mi spieghi il perchè di questo

    Codice PHP:
    <?php echo @$_GET['provincia'];?>
    che errore ti potrebbe restituire "echo"?
    L'uso di "@" per mantenere "l'output" senza i dovuti controlli è una abitudine brutta, tremendamente brutta...

    PS. e il JS dov'è? Il codice che hai postato popola le select, ma la parte di aggiornamento la fa JS.
    Ultima modifica di simpleticket : 27-02-2012 alle ore 13.44.09

  5. #5
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito

    Codice PHP:
    while($provincia=mysql_fetch_array($subquery)){ ?>
    <option value="<?php echo $provincia['provincia']; ?>" QUI onClick="window.open('./?m=./form/societaNuova.html&sigla=<?php echo $provincia['sigla']; ?>&provincia=<?php echo $provincia['provincia']; ?>','_parent');">
    <?php echo $provincia['provincia']; ?>
    Allora, ho tolto l'errore in quel punto perché su un paio di browser mi restituisce errore
    non trovando la suddetta variabile, soprattutto sul mio server locale mentre testo il sito
    prima di pubblicarlo on line.

    nel codice trova la parola QUI da li in poi c'è il javascript.

  6. #6
    Guest

    Predefinito

    Quel codice non fa altro che aprire un popup. Cosa ha a che vedere con le select?

  7. #7
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito

    su firefox funziona e fa quel che gli chiedo. Fa l'apertura della stessa pagina, ed aggiunge alle GET il valore che mi interessa. Su altri browser non funziona. Su Firefox SI.

    Ho provato anche a dire alla select di inviare ad una funzione javascript il valore in questione
    scrivendo ( spero di ricordare bene )

    Codice HTML:
    <script>
    function cap(valore) { window.open(./?m=./form/societaNuova.html&provincia=+valore','_parent') }
    </script>
    
    <select name="select" class="obbligatorio" onChange="cap(this.value)" >
    Ultima modifica di araim : 27-02-2012 alle ore 14.25.19

  8. #8
    Guest

    Predefinito

    Scusa ma allora non ho capito.

    Spiega esattamente cosa dovrebbe fare lo script.
    Magari posta una pagina in modo da vedere cosa succede col codice usato.

  9. #9
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito

    http://caosweb.altervista.org/s/?m=....ietaNuova.html

    qui hai il link, seleziona la PROVINCIA e vedi cosa capita. ho aggiornato con uno script nuovo

    Codice HTML:
    <select name="provincia" class="obbligatorio" onchange="window.open('./?m=./form/societaNuova.html&provincia=+this.options[selectedIndex].text','_parent')" >
    il problema è che non stampa il valore dopo PROVINCIA

  10. #10
    Guest

    Predefinito

    Prima di guardae il codice, quello scritto sull'onChange non ha effetto su altri elementi del DOM. window.open apre una nuova finestra.


    Codice HTML:
    <select name="provincia" class="obbligatorio" onchange="window.open('./?m=./form/societaNuova.html&provincia="+this.options[selectedIndex].text','_parent')" >
    prima di + this... devi chiudere gli apici
    Ultima modifica di simpleticket : 27-02-2012 alle ore 14.37.03

  11. #11
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito

    cosa comporta quindi aprire una nuova finestra?

  12. #12
    Guest

    Predefinito

    ad ogni cambio della select viene aperta una finestra del browser (ma che oramai quasi tutti i browser considerano da bloccare) e non ha effetto (come credo nelle intenzioni) sulle altre select.

  13. #13
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito

    soluzioni quindi ?

  14. #14
    Guest

    Predefinito

    Prova a dare un'occhiata qua.

    Ma il suggerimento che ti posso dare e di non fare copia/incolla di codice ma di capire cosa stai facendo. Ci sono voluti decine di post solo per convincerti che il codice che usavi non fa quello che volevi. Studia e capisci come funzionano le cose, poi anche cercare sarà più facile e produttivo.
    La rete è piena di codice, ma bisogna saperlo usare.

  15. #15
    araim non è connesso Utente attivo
    Data registrazione
    26-06-2004
    Messaggi
    275

    Predefinito

    Al di là di tutto però, questa soluzione funziona...

Regole di scrittura

  • Non puoi creare nuove discussioni
  • Non puoi rispondere ai messaggi
  • Non puoi inserire allegati.
  • Non puoi modificare i tuoi messaggi
  •