在前端,我有这样的东西:
<asp:DropDownList ID="MyBadDropDown" AutoPostBack="true" AppendDataBoundItems="true" runat="server" OnChange="valueChanged()" DataTextField="Text" DataValueField="Value"></asp:DropDownList>
在后端作为测试代码,我有这样的东西:
Dim listCol As New ListItemCollection
listCol.Add(New ListItem With {.Value = ""})
listCol.Add(New ListItem With {.Value = ConvertValue(Of String)("640", "0"), .Text = "New Item"})
Me.hidValeuForThis.Value = "640"
Me.MyBadDropDown.DataSource = listCol
Me.MyBadDropDown.DataBind()
但是,当我点击代码的那一部分时,新项目不会添加到下拉菜单中,直到有回发...为止,因此它不会自动显示在下拉菜单中。 我该如何解决?
答案 0 :(得分:0)
创建一个非本地列表,然后将该项目添加到此列表中。在将此列表分配为下拉列表作为数据源后,可以将项目添加到列表中或将其删除,然后出现下拉列表。
答案 1 :(得分:0)
我稍微简化了一下,它似乎起作用了。
System.out.println(jaddress.get("zipcode").getAsString());
背后的代码...
<asp:DropDownList ID="DropDownList1" runat="server" AutoPostBack="true"
DataTextField="Text" DataValueField="Value" Height="16px"
OnSelectedIndexChanged="DropDownList1_SelectedIndexChanged">
</asp:DropDownList>