Visualizzazione dei risultati da 1 a 6 su 6
  1. #1
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    4

    [asp.net - C#] Valore di default DropDownList

    ciao a tutti..
    una domanda velocissima..se ho una DDL con dei valori che vengono letti da DB, come faccio a far si che al caricamento della pagina con la DDL il primo valore selezionato di default sia una cosa del tipo : " scegliere valore "?
    non posso mettere list item xchè cmq non voglio che sia un valore che faccia partire l'evento OnSelectedIndexChanged...
    grazie!

  2. #2
    Utente di HTML.it L'avatar di luna80
    Registrato dal
    Sep 2004
    Messaggi
    17
    che problema c'è se ti solleva l'evento?

    nell'evento puoi mettere un controllo che l'elemento selezionato deve essesere diverso da quello per la scelta...oppure (ancora meglio) puoi "attaccare" un evento javascript al ddl che controlla l'elemento selezionato, se non è quello "scegliere valore" allora va avanti altrimenti si ferma e non fa più niente

    eventualmente il codice per il controllo javascript è

    codice:
    ddl.Attributes.Add("onchange", "return CheckValue();");
    e la funzione javascript, qualcosa del genere

    codice:
    function CheckValue()
    {
      if(document.getElementById("ddl").selectedIndex == 0)
         return false;
    }
    per semplicità io ho controllato l'elemento selezionato (presuppongo che "scegli valore" si il primo) ma puoi anche controllare il testo od il valore.

  3. #3
    Utente di HTML.it L'avatar di luna80
    Registrato dal
    Sep 2004
    Messaggi
    17
    tra l'altro potresti anche semplicemente usare un compare validator

  4. #4
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    4
    Grazie!Effettivamente un'ottima idea!
    Però ho un problema..
    Si tratta di DropDown generate da db...
    Quindi se inserisco un valore <asp:ListItem>Seleziona</asp:ListItem>, non me lo visualizza, visualizzando solo i valori letti dal db.
    Non esiste nessun modo per far si che mi visualizzi prima gli elementi dichiarati esplicitamente e poi quelli presi da db?

  5. #5
    Utente di HTML.it L'avatar di luna80
    Registrato dal
    Sep 2004
    Messaggi
    17
    in che senso non ti visualizza l'elemento?

    dopo aver fatto il databinding con i dati presi dal db devi fare qualcosa del tipo

    codice:
    ddl.Items.Add(new ListItem("Seleziona", "Seleziona"));
    (per aggiungerlo alla fine)

    oppure

    codice:
    ddl.Items.Insert(0,new ListItem("Seleziona", "Seleziona"));
    (per aggiungerlo alla posizione 0 oppure ad un'altra specifica posizione)

  6. #6
    Utente di HTML.it
    Registrato dal
    Mar 2008
    Messaggi
    4
    Ok, risolto!
    Perfetto, grazie di tutto,
    ciao!

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.