Visualizzazione dei risultati da 1 a 8 su 8
  1. #1
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837

    [Ajax]Select con selezioni uguali

    Ciao a tutti, premetto che non sono un asso in javascript e soprattutto in ajax, ma ho una grande volgia di appredere...comunque mi esplico il mio problema:
    ho 2 campi select identici (ovvero con le stesse option)

    Codice PHP:
     <SELECT onchange=calcola() name=spedizione_rotoli>
           <
    OPTION value=restoitalia selected>resto ITALIA</OPTION>
           <
    OPTION value=marchabruz>MARCHE ABRUZZO</OPTION>
           <
    OPTION value=sicsardcala>CALABRIA SICILIA SARDEGNA</OPTION>
    </
    SELECT>

    //seconda selectstesse ozpioni ma nome differente

     
    <SELECT onchange=calcola() name=spedizione_inchiostri>
           <
    OPTION value=restoitalia selected>resto ITALIA</OPTION>
           <
    OPTION value=marchabruz>MARCHE ABRUZZO</OPTION>
           <
    OPTION value=sicsardcala>CALABRIA SICILIA SARDEGNA</OPTION>
    </
    SELECT
    praticamente dovrei fare uno script in modo tale che quando un utente scelga un opzioni dalla 1° select in automatico la 2° select abbia la stessa opzione.
    Spero che qualcuno mi possa aiutare.
    Grazie a tutti.

  2. #2
    prova una cosa del tipo:
    Codice PHP:
    <html xmlns="http://www.w3.org/1999/xhtml">
    <
    head>
    <
    meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <
    title>Untitled 1</title>
    <
    script type="text/javascript" language="javascript">
        function 
    calcola() {
            
    spedizione_inchiostri.value spedizione_rotoli.value;
            
    //alert(spedizione_rotoli.selectedIndex);
        
    }
    </script>
    </head>

    <body>
    <div>
    <select onchange="return calcola()" id="spedizione_rotoli"> 
           <option value="0" selected="selected"></option> 
           <option value="restoitalia">resto ITALIA</option> 
           <option value="marchabruz">MARCHE - ABRUZZO</option> 
           <option value="sicsardcala">CALABRIA - SICILIA - SARDEGNA</option> 
    </select> 


    //seconda selectstesse ozpioni ma nome differente 


    <select id="spedizione_inchiostri"> 
           <option value="0" selected="selected"></option> 
           <option value="restoitalia">resto ITALIA</option> 
           <option value="marchabruz">MARCHE - ABRUZZO</option> 
           <option value="sicsardcala">CALABRIA - SICILIA - SARDEGNA</option> 
    </select>
    </div>
    </body>

    </html> 
    Visual Basic e Dintorni
    Blog sullo sviluppo Web in generale

  3. #3
    Non credo intendesse questo, simo.

    Prova con questo:
    codice:
    <html xmlns="http://www.w3.org/1999/xhtml">
    <head>
    <meta http-equiv="Content-Type" content="text/html; charset=windows-1252" />
    <title>Untitled 1</title>
    <script type="text/javascript" language="javascript">
        function calcola() {
            document.getElementById("spedizione_inchiostri").selectedIndex
                   =
            document.getElementById("spedizione_rotoli").selectedIndex;
        }
    </script>
    </head>
    
    <body>
    <div>
    <select onchange="calcola()" id="spedizione_rotoli">
           <option value="0" selected="selected"></option>
           <option value="restoitalia">resto ITALIA</option>
           <option value="marchabruz">MARCHE - ABRUZZO</option>
           <option value="sicsardcala">CALABRIA - SICILIA - SARDEGNA</option>
    </select> 
    
    
    //seconda selectstesse ozpioni ma nome differente
    
    
    <select id="spedizione_inchiostri">
           <option value="0" selected="selected"></option>
           <option value="restoitalia">resto ITALIA</option>
           <option value="marchabruz">MARCHE - ABRUZZO</option>
           <option value="sicsardcala">CALABRIA - SICILIA - SARDEGNA</option>
    </select>
    </div>
    </body>
    
    </html>

  4. #4
    il risultato è lo stesso, la differenza è che il primo legge il valore della selezione, il secondo l'indice della selezione (dato dalla posizione dell'elemento nell'elenco).

    Nel secondo caso, se i due elenchi non hanno lo stesso ordinamento (o se contengono intestazioni diverse), lo script funziona ma da risultati non accurati. Secondo me legando le due select per valore crei un legame più forte.
    Visual Basic e Dintorni
    Blog sullo sviluppo Web in generale

  5. #5
    Scusami, non sapevo proprio che si potesse utilizzare il value della select in questo modo...
    Cmq è meglio usare document.getElementById per interfacciarsi alle select.

  6. #6
    si, sul getElementById hai perfettamente ragione. Ho scritto lo script al volo e per cattiva abitudine ho usato il collegamento diretto all'elemento.
    Visual Basic e Dintorni
    Blog sullo sviluppo Web in generale

  7. #7
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    vi ringrazio per le ripsoste.
    Praticamente ho provato il codice come detto da Mega69 xrò ho un problema:

    <select onchange="return calcola()" id="spedizione_rotoli">

    la funzione calcola già la uso x richiamare un'altra funzione e non posso fare a meno di utilizzare poichè determina un valore numerico.
    é possibile utilizzare due onchange che eseguano le due funzioni?
    Una x il valore numerico e l'altra per selezionare le stesse opzioni della select.

    Grazie a tutti.

  8. #8
    Utente di HTML.it L'avatar di mariox
    Registrato dal
    Nov 2006
    Messaggi
    837
    up

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.