SQL Server: 我有 3 列 [ID], [文本], [值]
ASPX 页:
我有一个由SqlDataSource
填充的 dopdownlist :
<asp:DropDownList ID="ddl" runat="Server" DataSourceID="sql" DataValueField="ID" DataTextField="Text" />
<asp:SqlDataSource ID="sql" runat="Server" SelectCommand="sp" SelectCommandType="StoredProcedure" />
使用 DataValueField
和 DataTextField
,我可以根据所选值捕获 SQL Server 表中的 2 个值。
问题:
如何根据用户 #ddl 所选值捕获附加列[Value]
?
笔记:
我可以使用 javascript 来填充使用 [值] 字段而不是 [ID] 字段并在 [文本] 字段上进行匹配的匹配下拉列表来实现这一点。
必须有一种更有效和适当的方法来仅使用 asp 或 VB 来处理此问题。
使用的答案
我只是在使用时使用 ddl [ID]
和 sql select 语句获取值。
SELECT @Value = [Value] FROM [tbl] WHERE [ID] = @ID
传入@ID作为下拉列表选定值传递。
我猜 ID 是行的唯一标识符,那么为什么需要表单提交文本或值列呢?您可以使用提交的 ID 从数据库中检索这些内容。还是我在这里错过了什么?