ASP.NetでカスタムテキストをDropdownListに設定する方法
-
03-07-2019 - |
質問
アプリケーションの1つにドロップダウンリストコントロールがあり、データベースからアイテムを追加すると、デフォルトで最初のアイテムがドロップダウンリストに表示されますが、「リストからアイテムを選択」のように他のテキストを表示したいこれを行う方法はありますか。
また、JavaScriptから同じ値を設定するのを手伝ってもらえますか
解決
ASP.NET側では、AppendDataBoundItems =" true"を使用してDropDownListを作成できます。バインドするアイテムはデフォルトの後になります:
<asp:DropDownList AppendDataBoundItems="true" ID="yourListId" runat="server">
<asp:ListItem Text="Select something" Value="-1" />
</asp:DropDownList>
Javascriptで同じことを完全に行うには、次のような関数を使用します。
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");
またはjQueryを使用します(特に新しいオプションタグを作成する場合は、おそらくもっときれいなものがありますが、これは機能します):
$("#yourListId option:first").before("<option value='-1'>Select something</option>");
他のヒント
Patridgeの答えは正しいですが、aspメソッドを使用しても問題が発生する場合は、listitemにitemsタグを追加してください。
<asp:DropDownList AppendDataBoundItems="true" ID="yourListId" runat="server">
<items>
<asp:ListItem Text="Select something" Value="-1">--Select Something--</asp:ListItem>
</items>
</asp:DropDownList>
所属していません StackOverflow