0
我有一個gridview,我想顯示或隱藏一個文本框基於選定的同一行上的下拉列表的值。基於GridView中的下拉列表值設置文本框的可見性
我的GridView:
<asp:GridView ID="GridViewUsers" runat="server" AutoGenerateColumns="False" CssClass="TableFramed">
<Columns>
<asp:TemplateField HeaderText="Type">
<ItemTemplate>
<asp:DropDownList ID="ddlType" runat="server" AutoPostBack="true">
<asp:ListItem Value="1">Overtime</asp:ListItem>
<asp:ListItem Value="2">Temporary</asp:ListItem>
<asp:ListItem Value="3">Permanent</asp:ListItem>
</asp:DropDownList>
</ItemTemplate>
</asp:TemplateField>
<asp:TemplateField HeaderText="First Name">
<ItemTemplate>
<asp:TextBox ID="txtFName" runat="server"></asp:TextBox>
<asp:RequiredFieldValidator ID="FNameValidator" runat="server" Text="*" ControlToValidate="txtFName" Display="Dynamic"></asp:RequiredFieldValidator>
</ItemTemplate>
<asp:TemplateField HeaderText="hide me">
<ItemTemplate>
<asp:TextBox ID="txtHideMe" runat="server"></asp:TextBox>
</ItemTemplate>
</Columns>
</asp:gridview>
如何聯結起來,使txtHideMe
文本框可以隱藏或顯示基於關閉下拉列表中選擇的值嗎?
Codebehide:
Protected Sub ddlType_SelectedIndexChanged(ByVal sender As System.Object, ByVal e As System.EventArgs)
For Each row In GridViewUsers.Rows
Dim reqType As DropDownList = CType(row.FindControl("ddlType"), DropDownList)
Dim txtHideMeAs TextBox = CType(row.FindControl("txtHideMe"), TextBox)
If reqType.SelectedItem.Value = "2" Then
txtHideMe.Visible = "False"
End If
Next
End Sub
編輯: 我也想能夠使用必填字段驗證的文本框,如果它不隱藏。
感謝。我知道我錯過了一些東西,但並不認爲這很簡單。 – zeroef 2010-08-27 19:59:10