【发布时间】:2013-04-12 13:12:41
【问题描述】:
我有一个数据库绑定下拉列表,它从数据库中获取其值。
当我将 ddl.SelectedItem 称为 .Text 或 .Value 时,索引不正确。
假设数据库表中的值是这样的:
Column1 | Column2
Dublin1 | Value1
Dublin2 | Value1
Dublin3 | Value1
London1 | Value2
London2 | Value2
London3 | Value2
SQL 选择查询:
SELECT [Column1],[Column2] FROM [Table] ORDER BY [Column1]
DDL:
<asp:DropDownList runat="server" ID="ddl"
DataSourceID="SQLDataSource" DataTextField="Column1"
DataValueField="Column2"></asp:DropDownList>
仅在 ASPX 上绑定:
<asp:SqlDataSource ID="SQLDataSource" runat="server"
ConnectionString="<%$ConnectionStrings:DatabaseConnectionString %>"
SelectCommand="SELECT [Column1],[Column2],FROM [Table] ORDER BY [Column1]">
</asp:SqlDataSource>
因此,当我从下拉列表中获取 Selected Item 时,无论我选择 Dublin2 还是 Dublin3,它总是返回 Dublin1,与 London 值相同。
ddl 为 item.text 和 item.value 正确填充。
关于边界我需要设置什么吗?
【问题讨论】:
-
你能用
ddl.SelectedItem添加服务器端代码吗? -
TextItems 和 ValueItems 是否唯一?
-
好吧,这看起来很奇怪,如果您提供更多服务器端代码,我们可以帮助您:)
-
SELECT [Column1],[Column2] FROM [Table] ORDER BY [Column1]这是给出正确的值还是重复? -
你必须清除选中的项目
标签: c# asp.net sql html-select