【发布时间】:2013-05-10 01:16:46
【问题描述】:
我有一个包含 3 个项目的下拉列表,如下所示:
<asp:ListItem Text="none" Value=""></asp:ListItem>
<asp:ListItem>Not Started</asp:ListItem>
<asp:ListItem>Pending</asp:ListItem>
<asp:ListItem>Completed</asp:ListItem>
</asp:DropDownList>
数据库字段名称为status。
默认情况下,第一次向数据库插入请求时,会将 Not Started 的值插入数据库。
当用户在编辑模式下加载 gridview 时,我们希望看到上面的下拉列表列表,其中 Not Started 预填充了 Not Started 的值。
如果用户更新该行并将下拉列表值从Not Started 更改为Pending,则下次用户加载相同的gridview 时,我们希望看到Pending 的值作为选定值。
换句话说,我们希望看到最后插入的值是在编辑模式下加载 gridview 时的选定值。
非常感谢任何帮助。
以下是从数据库中填充的。
<asp:TemplateField HeaderText="status">
<EditItemTemplate>
<asp:DropDownList id="ddlstatus" CssClass="dropdown" runat="server">
</asp:DropDownList>
</EditItemTemplate>
<ItemTemplate>
<asp:Label ID="lblstatus" runat="server" Text='<% #Bind("status") %>'></asp:Label>
</ItemTemplate>
</asp:TemplateField>
【问题讨论】:
-
你到现在都做了什么?任何代码sn-p?
-
我知道有人会问这个问题——你做了什么?他们通常没有什么可提供的。但是我已经用我到目前为止所做的更新了上面的代码。如何确保在更新 db 字段 Status 的 3 个值中的一个时,它成为下拉列表中的第一个选定值,而不会丢失其他 2 个值。真的很感谢@Daredev
-
好吧,我会试着为你改变这个观念。感谢您发布代码 sn-p。我看到的是您可以将状态值从 DB 绑定到
lblstatus标签,但您没有将状态值从 DB 绑定到ddlstatus任何地方。请检查,同时我也在检查。 -
谢谢@Daredev。这实际上是第一次,这已经发生了;不仅仅是我的帖子和其他几个帖子,有人问这个问题只是为了搞笑。你是对的,ddlstatus 没有绑定到 db,这就是我得到的错误。我最大的问题是如何处理。