Pagina 1 di 2 1 2 ultimoultimo
Visualizzazione dei risultati da 1 a 10 su 13
  1. #1
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    12

    Concatenazione dropdownmenus

    Qualcuno sa come fare?
    mi spiego meglio perchè forse dal titolo del topik non si capisce molto quello che intendo

    in pratica ho 2 dropdownmenu.... (runat=server)

    uno di questi contiene una lista delle province d'italia

    ora, volevo fare in modo che nel momento in cui selezionavo una provincia nella seconda dropdownlist comparisse la lista dei comuni appartenenti a quest'ultima.

    a questo scopo ho un database access contenente le province con i relativi comuni... faccio le apposite query ma il secondo dropdownmenu resta comunque vuoto... ora vi mostro qui di seguito la funzione che ho creato allo scopo, magari qualcosa non va o ho delle procedure mancanti...
    codice:
    		private void provincia_SelectedIndexChanged(object sender, System.EventArgs e)
    		{
    			oleDbConnection1.Open();
    			OleDbCommand cmd = new OleDbCommand("SELECT Comune FROM TabComuni WHERE(Provincia = '"+provincia.SelectedItem.ToString()+"') ORDER BY Comune", oleDbConnection1);
    			OleDbDataReader dr = cmd.ExecuteReader();
    			while(dr.Read())
    			{
    				comune.Items.Add(dr.GetString(0));
    			}
    			
    		}

  2. #2
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    Se non sbaglio c'è un errore alla riga della query che dovrebbe essere:

    OleDbCommand cmd = new OleDbCommand("SELECT Comune FROM TabComuni WHERE(Provincia = '"+provincia.SelectedItem.Value.ToString()+"') ORDER BY Comune", oleDbConnection1);

    Ciao

  3. #3
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    12
    provo subito

    nada.... ho provato a modificarlo come mi hai suggerito ma comunque il secondo dropdownmenu rimane vuoto... non capisco come mai......

    cmq non credo sia un problema di query, perchè ho provato ad eseguire la query con un valore statico generata con access e la query funziona, ma il dropdownlist non si riempie
    boh.

  4. #4
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    12
    sono convenuto alla conclusione che il codice di quella funzione non viene mai eseguito ( non so come mai )....
    molto probabilmente sbaglio eventhandler???

    perchè la lista dei miei generatori di eventi disponibili per una dropdownlist è la seguente:

    DataBinding
    Disposed
    Init
    Load
    Prerender
    Selectedindexchanged
    Unload

    quale devo utilizzare?
    io ho pensato
    SelectedIndexChanged
    ma molto probabilmente mi sbaglio....

  5. #5
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    No, è quella corretta.

    Mi rimane un dubbio: nell'evento Page_Load, ricarichi ad ogni postback i dati nel primo dropdowslist (quello che esegue il selectedindexchanged per intenderci)?

    Ciao

  6. #6
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    12
    ti confesso che per me è buio totale... non ho capito quello che hai detto e tantomeno so come farlo

    io l'unica cosa che ho fatto è inserire quella funzione nel codice della pagina mamolto probabilmente non è sufficiente... devo fare altro vero? mi spiegheresti cosa? e come

  7. #7
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    I dati delle provincie d'Italia, come le inserisci nel dropdownlist? Da un database, vero? In quale evento esegui la "popolazione" del dropdownlist da questo database con il databind? Nel Sub Page_Load?

    Ciao

  8. #8
    Utente di HTML.it
    Registrato dal
    Apr 2004
    Messaggi
    12
    beh... la popolazione del primo dropdownlist la eseguo in fase di pageload ( quello delle province ).... ma quello dei comuni pensavo venisse fatto nel momento in cui cambiavo selezione nel primo dropdown mediante il metodo sopra postato.

  9. #9
    Utente di HTML.it
    Registrato dal
    Mar 2003
    Messaggi
    204
    Prova a inserire quel codice all'interno del controllo sul postback:

    Sub Page_Load()
    if not Page.IsPostBack then
    '
    ' qui il tuo codice con il quale inserisci
    ' i dati nel database.
    '
    end if
    End sub

    Ciao

  10. #10
    Utente di HTML.it L'avatar di pietro09
    Registrato dal
    Jan 2002
    Messaggi
    10,116
    Quello che chiedi, Rampage è una cosa classica già ampiamente discussa.
    La risoluzione la puoi fare in due modi.
    La prima prevede di utilizzare solo il server. In pratica, nell'evento onchange del dropdown provincie, recuperi l'id della provincia e carichi i comuni nel dropdown comuni utilizzando una query apposita. Il tutto è abbastanza semplice.

    Il secondo modo, molto più interessante è utilizzare l'evento onchange lato client del dropdown. In pratica, nel server devi creare un vettore javascrip, che il dropdown provincie interrogherà per popolare il dropdown comuni.

    Pietro

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