我正在使用工具箱控件验证用户输入,例如文本框、下拉列表,当用户在下拉列表中选择一个选项时,我想让它显示或隐藏下面的上传控件。
例如,在下面的代码中,当单独工作被选择为YES Answer时,我希望下面显示单独工作程序文档的文件上传控件,但如果是NO答案,我不希望显示文件上传控件。
任何帮助都将不胜感激。感谢
<td class="question">
Lone Working:
</td>
<td>
<asp:DropDownList ID="DDLONE" runat="server" Width="150px"
OnSelectedIndexChanged="DDLONE_SelectedIndexChanged">
<asp:ListItem Text="Yes"></asp:ListItem>
<asp:ListItem Text="No"></asp:ListItem>
</asp:DropDownList>
<span class="mandatory">*</span>
<asp:RequiredFieldValidator ID="RequiredFieldValidator27" runat="server" ControlToValidate="DDLONE" ErrorMessage=" Required." InitialValue="Please select one..." ForeColor="Red" SetFocusOnError="true"></asp:RequiredFieldValidator>
</td>
</tr>
<tr>
<td class="question">
Lone Working Company Procedure:
</td>
<td>
<asp:AsyncFileUpload ID="AsyncFileUpload3" runat="server" UploaderStyle="Traditional"
PersistedStoreType="Session" CssClass="answer" style="float:left" PersistFile="True" CompleteBackColor="#C3D021" />
<div class="mandatory" style="display:inline">*</div>
<%--- <asp:RequiredFieldValidator ID="AsyncFileUpload3_RequiredFieldValidator" runat="server"
ErrorMessage=" Required."
ForeColor="Red"
ControlToValidate="AsyncFileUpload3"></asp:RequiredFieldValidator>
<asp:TextBox ID="txtUplLone" runat="server" style="display:none" MaxLength="0" /> ---%>
您可以尝试使用此代码
1 Add AutopostBack="true"
<asp:DropDownList ID="DDLONE" runat="server" Width="150px"
OnSelectedIndexChanged="DDLONE_SelectedIndexChanged" AutopostBack="true">
2
protected void DDLONE_SelectedIndexChanged(object sender, EventArgs e)
{
if(DDLONE.SelectedItem.Text == "Yes")//Adjust
{
AsyncFileUpload3.Visible = true;
}
else
{
AsyncFileUpload3.Visible = false;
}
}
Nota:你必须用这种方法绑定你的下载列表(只需一次)
if(! IsPostBack)
{
//Bind
}
并使用ViewState来持久化您的DropDownList