Come impostare il testo personalizzato in Elenco a discesa in ASP.Net
-
03-07-2019 - |
Domanda
Ho il controllo dell'elenco a discesa in una delle mie applicazioni e quando aggiungo elementi al suo interno dal database Visualizza il primo elemento nell'elenco a discesa per impostazione predefinita, ma voglio visualizzare un altro testo in questo tipo " Seleziona elemento dall'elenco " C'è un modo per farlo.
Puoi aiutarmi, per favore, a impostare lo stesso valore da javascript
Soluzione
Dal lato ASP.NET, puoi creare DropDownList con AppendDataBoundItems = " true " e tutti gli elementi a cui ti associ verranno dopo l'impostazione predefinita:
<asp:DropDownList AppendDataBoundItems="true" ID="yourListId" runat="server">
<asp:ListItem Text="Select something" Value="-1" />
</asp:DropDownList>
Per fare la stessa cosa completamente in Javascript, puoi farlo con una funzione come questa:
function addFirstItem(list, text, value)
{
var newOption = document.createElement("option");
newOption.text = text;
newOption.value = value;
list.options.add(newOption);
}
addFirstItem(document.getElementById("yourListId"), "Select something", "-1");
O con jQuery (probabilmente c'è qualcosa di molto più pulito, specialmente per la creazione di un nuovo tag opzione, ma funziona):
$("#yourListId option:first").before("<option value='-1'>Select something</option>");
Altri suggerimenti
La risposta di Patridge è corretta, tuttavia se si utilizza il metodo asp e si riscontra ancora un problema, aggiungere il tag items all'elenco.
<asp:DropDownList AppendDataBoundItems="true" ID="yourListId" runat="server">
<items>
<asp:ListItem Text="Select something" Value="-1">--Select Something--</asp:ListItem>
</items>
</asp:DropDownList>