Visualizzazione dei risultati da 1 a 8 su 8
  1. #1

    riprendere il valore da una dropodownlist per l'insert

    All'interno di un form ho messo una dropodownlist popolata da database attraverso un dataset.

    <tr>
    <td>Gruppo: *
    </td>
    <td>
    <asp:dropdownlist Rows=1 Runat=server ID="gruppo" DataValueField="gruppo" />
    </td>
    </tr>

    Ora sto cercando di inserire questi dati nel Db, ma non riesco a recuperare il valore selezionato nella lista a discesa.

    come devo riferirmi a questo valore???

    Mi spiego megio, questa p la mia sub:
    Sub Addagenda_Click(Sender As Object, E As EventArgs)
    Message.InnerHtml = ""
    If (Page.IsValid)

    Dim DS As DataSet
    Dim MyCommand As SqlCommand

    Dim InsertCmd As String = "insert into bic_faq (domanda, risposta, gruppo) values (@domanda, @risposta, @gruppo)"

    MyCommand = New SqlCommand(InsertCmd, MyDSN)

    MyCommand.Parameters.Add(New SqlParameter("@domanda", SqlDbType.NVarChar, 250))
    MyCommand.Parameters("@domanda").Value = domanda.Value

    MyCommand.Parameters.Add(New SqlParameter("@risposta", SqlDbType.NVarChar, 250))
    MyCommand.Parameters("@risposta").Value = risposta.Value

    MyCommand.Parameters.Add(New SqlParameter("@gruppo", SqlDbType.NVarChar, 50))
    'MyCommand.Parameters("@gruppo").Value = gruppo.Value
    MyCommand.Parameters("@gruppo").Value = gruppo.SelectedValue.tostring
    Try
    MyCommand.ExecuteNonQuery()
    Message.InnerHtml = "FAQ inserita correttamente
    "
    Catch Exp As SQLException
    If Exp.Number = 2627
    Message.InnerHtml = "ERRORE. Esiste già un record con la stessa chiave primaria"
    Else
    Message.InnerHtml = "ERRORE. Impossibile aggiungere il record. Verificare che le informazioni immesse nei campi siano corrette"
    End If
    Message.Style("color") = "darkred"
    End Try

    MyCommand.Connection.Close()

    End If

    BindGrid()
    End Sub

    in particolare lle righe che non funzionano bene sono: MyCommand.Parameters.Add(New SqlParameter("@gruppo", SqlDbType.NVarChar, 50))
    'MyCommand.Parameters("@gruppo").Value = gruppo.Value
    MyCommand.Parameters("@gruppo").Value = gruppo.SelectedValue.tostring

    ho provato anche a prendere il valore con gruppo.SelectedItem.tostring, ma non riesco mai a recuperare quello corretto, in genere ottengo sempre il primo valore della lista.
    Come devo fare per recuperare il valore corretto??? Help please...

  2. #2
    Utente di HTML.it L'avatar di Ottavio
    Registrato dal
    Jul 2000
    Messaggi
    286
    Se hai il form basta
    che lo richiami come
    Request.Form.Item("gruppo")
    quindi
    MyCommand.Parameters("@gruppo").Value = Request.Form.Item("gruppo")

    Perchè il valore degli altri riesci a scriverlo cosi !?
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    Era un mondo adulto, si sbagliava da professionisti....
    <P.Conte>
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

  3. #3
    Grazie funziona perfettamente!
    e che ancora non conosco bene la sintassi dell'asp.net e mi incarto con le cose più facili


    Gli altri valori che recuperavo da delle textbox li riuscivo a prendere con questa sintassi "testo.value" mentre con la lista non era possibile!!!

    Puoi rispondermi ora ad un'altra domanda?
    Come devo fare per lasciare vuoto il primo valore della mia select, oppure magari mettere una scritta "Clicca qui per selezionare..."?

  4. #4
    Utente di HTML.it L'avatar di Ottavio
    Registrato dal
    Jul 2000
    Messaggi
    286
    la risposta la ottieni con una semplice
    ricerca per "Selezionare" in qs forum...

    :gren: cmq è :

    gruppo.Items.Insert(0, New ListItem("Testo", "valore"))
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    Era un mondo adulto, si sbagliava da professionisti....
    <P.Conte>
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

  5. #5
    Questa riga non ha nessun effetto sulla mia pagina.
    gruppo.Items.Insert(0, New ListItem("Testo", "valore"))

    forse perchè le dropdownlist è popolata da db attraverso un dataset?

  6. #6
    Utente di HTML.it L'avatar di Ottavio
    Registrato dal
    Jul 2000
    Messaggi
    286
    dovresti metterla dopo aver caricato la combo...
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<
    Era un mondo adulto, si sbagliava da professionisti....
    <P.Conte>
    <<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<<

  7. #7
    Utente di HTML.it L'avatar di nicki
    Registrato dal
    Dec 2000
    Messaggi
    139
    devi metterla sotto ai comandi:

    DropDownListTua.datasource=datasettuo;
    DropDownListTua.databind();

    DropDownListTua.Items.Insert(0,new System.Web.UI.WebControls.ListItem("Seleziona qualcosa, caspita!",""));
    Ciao, nic.

  8. #8
    Grazie, ora è perfetto!!!

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.