Visualizzazione dei risultati da 1 a 3 su 3
  1. #1
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003

    Popolare un htmlcontrol (select)

    Sto facendo lo script per la modifica di alcuni dati su un database.
    Nello script è inclusa una select (il classico controllo html) che deve essere popolata (al load della pagina) prendendo i dati da un database.
    Lo so che potrei utilizzare una dropdownlist ma la select fa parte di un form che non ha (e non deve avere) l'attributo runat="server".
    Ho provato a fare una cosa del genere:
    codice:
    DataRow dr;
    li = new ListItem();
    for (i = 0; i < ds.Tables[0].Rows.Count; i++) 
    {
       dr = ds.Tables[0].Rows[i];
       li.Value = dr["id"].ToString();
       li.Text = dr["nome"].ToString();
       menusel.Items.Insert(i,li);
    }
    Dove menusel è la select con runat="server".
    Però tra le opzioni trovo solo l'ultimo record ripetuto tante volte quanti sono i record estratti.
    Dov'è l'errore?

  2. #2
    Utente di HTML.it L'avatar di VaLvOnAuTa
    Registrato dal
    Jun 2002
    Messaggi
    2,003
    Ho trovato una soluzione

    Creo al caricamento della pagina una stringa che contiene le varie opzioni (del tipo
    "<option value='1'>testo</option>" e poi la inserisco tra i tag select.

    Brutta, ma funzionante

  3. #3
    Utente di HTML.it
    Registrato dal
    Nov 2006
    Messaggi
    559
    ciao,
    l'errore e' che di listItem devi crearne tanti quanti sono gli elementi..
    in pratica devi spostare la new dentro il for
    se nella vita avro avuto la possiblita di aiutare qualcuno non avro vissuto invano (E. Dikinson)

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.