使用AJAX在SelectedIndexChanged事件上绑定网格视图 [英] Bind a gridview on SelectedIndexChanged Event using AJAX
本文介绍了使用AJAX在SelectedIndexChanged事件上绑定网格视图的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!
问题描述
我想将Gridview绑定到选定索引"更改上..我不知道为什么我会陷入这个简单的问题..我的代码:
I want to Bind my Gridview on Selected Index change.. I dont know why am i stuck in this simple issue.. My Code:
protected void DropDownListHostelRoom_SelectedIndexChanged(object sender, EventArgs e)
{
if (DropDownListHostelRoom.SelectedValue == "Single")
{
SqlConnection cn = new SqlConnection(@"Data Source=.;Initial Catalog=_uniManagement;Integrated Security=True");
string sql = "select HRName,Booked,_Issued from _hostel_room where booked = 'NO' and _issued = 'NO' and _hrtypid = 1";
SqlCommand cmd = new SqlCommand(sql, cn);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataTable dt = new DataTable();
da.Fill(dt);
GridViewHostelRoom.DataSource = dt;
GridViewHostelRoom.DataBind();
UpdatePanel1.DataBind();
}
}
<pre lang="xml"><asp:Content ID="Content2" ContentPlaceHolderID="MainContent" runat="server">
<asp:ScriptManager ID="ScriptManagerMemberType" runat="server">
</asp:ScriptManager>
<asp:UpdatePanel ID="UpdatePanelMemberType" runat="server">
<ContentTemplate>
<div>
<fieldset>
<legend>Create Hostel Member</legend>
<asp:Label ID="LabelMemberType" runat="server" Text="Member Type"></asp:Label> 
<asp:DropDownList ID="DropDownListMemberType" AutoPostBack="true" runat="server"
DataTextField="HMemTypeName" DataValueField="_HMemTypeID" OnSelectedIndexChanged="DropDownListMemberType_SelectedIndexChanged">
</asp:DropDownList>
<br />
<asp:Label ID="LabelMemberName" runat="server" Text="Search"></asp:Label>
<asp:TextBox ID="TextBoxMemberName" runat="server" OnTextChanged="TextBoxMemberName_TextChanged"></asp:TextBox><br />
<asp:GridView ID="GridViewMemberType" runat="server" AutoGenerateColumns="False"
Style="margin-right: 0px" DataKeyNames="_PersID">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:CheckBox ID="CheckBoxMemberType" runat="server" OnCheckedChanged="CheckBoxMemberType_CheckedChanged" />
</ItemTemplate>
</asp:TemplateField>
<asp:BoundField DataField="FirstName" />
<asp:BoundField DataField="LastName" />
<asp:BoundField DataField="DOB" />
<asp:BoundField DataField="FatherName" />
<asp:BoundField DataField="Nationality" />
</Columns>
</asp:GridView>
<asp:Button ID="ButtonHostelMember" runat="server" Text="Create Hostel Member" OnClick="ButtonHostelMember_Click" />
<asp:Label ID="LabelTemporaryID" runat="server" Text=""></asp:Label>
</fieldset>
</div>
</ContentTemplate>
</asp:UpdatePanel>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<div>
<fieldset>
<legend>Hostel Details </legend>
<asp:Label ID="LabelHostelRoomType" runat="server" Text="Room Type"></asp:Label>
<asp:DropDownList ID="DropDownListHostelRoom" runat="server" DataTextField="HTypeName"
DataValueField="_HRTypID" OnSelectedIndexChanged="DropDownListHostelRoom_SelectedIndexChanged">
</asp:DropDownList>
<asp:GridView ID="GridViewHostelRoom" runat="server">
<Columns>
<asp:TemplateField>
<ItemTemplate>
<asp:LinkButton ID="LinkButtonRoomIssue" runat="server">Click To Issue</asp:LinkButton>
</ItemTemplate>
</asp:TemplateField>
</Columns>
</asp:GridView>
</fieldset>
</div>
</ContentTemplate>
</asp:UpdatePanel>
</asp:Content>
推荐答案
只需将触发器添加到您的更新面板
just add Trigger to ur update panel
<Triggers>
<asp:AsyncPostBackTrigger ControlID="DropDownListHostelRoom"
EventName="SelectedIndexChanged" />
</Triggers>
you forget Autopostback
:)
<asp:DropDownList ID="DropDownListHostelRoom" runat="server" DataTextField="HTypeName"
DataValueField="_HRTypID"
OnSelectedIndexChanged="DropDownListHostelRoom_SelectedIndexChanged"
AutoPostBack="True">
这篇关于使用AJAX在SelectedIndexChanged事件上绑定网格视图的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!
查看全文