【问题标题】:How do I persist the selected value of dropdownlist?如何保留下拉列表的选定值?
【发布时间】: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,这就是我得到的错误。我最大的问题是如何处理。

标签: jquery asp.net vb.net


【解决方案1】:

删除第一个列表项,或者放在最后,使“未启动”项首先,然后它应该是控件第一次放在窗体上时选择的项

【讨论】:

  • 除非我误解了你,否则这不是我想要的。如我原来的帖子中所述,如果我选择Pending 并将其保存到数据库中,下次我加载该gridview 时,我希望看到Pending 作为下拉列表中的选定项。每当进行更新时,无论从下拉列表中选择并插入数据库中的任何项目,都会成为在摘要或编辑模式下加载 gridview 时选择的第一个项目。我希望这能澄清我们的需求。
  • 抱歉,您应该更新下拉列表以包含字段 DataValueField="status" DataTextField="status",这应该将记录与控件链接
猜你喜欢
  • 1970-01-01
  • 2023-02-18
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2016-12-10
相关资源
最近更新 更多