基本上我有一个似乎无法激活的aspx页面功能。我创建了一个应该在下拉菜单的selectedindexchange上运行的函数。
<asp:TableCell>Credit Card Type: <asp:DropDownList
id="DropDownCredit"
OnSelectedIndexChanged="creditType"
Runat="server">
<asp:ListItem Text="Select" Value="Empty" />
<asp:ListItem Text="Visa" Value="Visa" />
<asp:ListItem Text="Mastercard" Value="Mastercard" />
<asp:ListItem Text="Discover" Value="Discover" />
<asp:ListItem Text="American Express" Value="American Express" />
</asp:DropDownList>
正如您所看到的,我添加了我的函数名称,以便在选择某些内容时运行。现在我的功能非常简单。
Protected Sub creditType()
If DropDownCredit.SelectedIndex.ToString.StartsWith("A") Then
TextBoxCardNumberAmerican.Enabled = True
Else
TextBoxCardNumberOthers.Enabled = True
End If
End Sub
顺便说一下,我已经将上面函数中提到的两个文本框设置为初始禁用,所以只有当一个文本框正确时才启用它。我猜这个字符串没有被正确解释。任何帮助都会很棒。
答案 0 :(得分:1)
两件事:您的creditYpe方法应该有错误的签名:
Protected Sub creditType(Object o, EventArgs e)
..并将AutoPostBack =“true”属性添加到您的asp控件
Credit Card Type: <asp:DropDownList id="DropDownCredit" OnSelectedIndexChanged="creditType" AutoPostBack="true" Runat="server"> <asp:ListItem Text="Select" Value="Empty" /> <asp:ListItem Text="Visa" Value="Visa" /> <asp:ListItem Text="Mastercard" Value="Mastercard" /> <asp:ListItem Text="Discover" Value="Discover" /> <asp:ListItem Text="American Express" Value="American Express" /> </asp:DropDownList>
答案 1 :(得分:0)
你应该添加AutoPostBack =&#34; True&#34;属性到下拉列表 只有这样才能执行服务器端子
答案 2 :(得分:0)
请设置
AutoPostBack="True"
在下拉列表中。像这样:
<asp:DropDownList id="DropDownCredit"
OnSelectedIndexChanged="creditType" AutoPostBack="True" Runat="server">
该事件将触发