【发布时间】:2015-05-12 07:45:58
【问题描述】:
我的 asp.net 应用程序中有一个这样的下拉列表,
<asp:DropDownList runat="server" ID="ddlChanges" CssClass="selectstyle" onchange="javascript:ddlChangesChanged();">
<asp:ListItem Text="-- Select -- " Value="-1"></asp:ListItem>
<asp:ListItem Text="Status Change" Value="1"></asp:ListItem>
<asp:ListItem Text="Product Name Change" Value="2"></asp:ListItem>
<asp:ListItem Text="Category Change" Value="3"></asp:ListItem>
</asp:DropDownList>
因此,当用户从列表中选择“状态更改”时,会出现另一个带有以下值的下拉列表,
<asp:DropDownList runat="server" ID="ddlStatus" CssClass="selectstyle" Style="visibility: hidden;">
<asp:ListItem Text="-- Select -- " Value="-1"></asp:ListItem>
<asp:ListItem Text="Pending" Value="1"></asp:ListItem>
<asp:ListItem Text="Fixed" Value="2"></asp:ListItem>
<asp:ListItem Text="Cancelled" Value="3"></asp:ListItem>
</asp:DropDownList>
<asp:Button ID="btnUpdate" CssClass="selectstyle" runat="server" Text="Update" OnClick="btnUpdate_Click"></asp:Button>
如果用户没有从下拉列表 (ddlStatus) 中选择任何值,我将在 btnUpdate 点击事件中使用 JavaScript 显示一条警报消息(“您必须选择一个状态。”),
if (this.ddlStatus.SelectedItem.Value.Trim() == "-1")
{
string script = "<script type=\"text/javascript\">alert('You must select a status.');</script>";
ClientScript.RegisterClientScriptBlock(this.GetType(), "Alert", script);
}
但在此之后,我的页面刷新并下拉列表 ddlChanges 具有“状态更改”(先前选择的项目)作为选定项目和下拉列表 (ddlStatus) 被隐藏。我希望 ddlChanges 下拉列表具有 -- 选择 -- 作为所选项目,并且 ddlStatus 应该是可见的。
我该怎么做?
【问题讨论】:
-
那么为什么不将
ddls 重置为btnUpdate点击内的所需状态呢?ddlStatus.Style= "visibility: hidden";和ddlChanges.SelectedItem = ... -
我试过了,但是没用。
-
您确定以后不重写更改吗?
-
编辑您的问题,您可能的意思是“...ddlChanges 下拉列表将 Status Change 作为所选项目,并且 ddlStatus 应该可见。”
标签: javascript c# jquery html asp.net