假設(shè):數(shù)據(jù)源控件GrdiView,無刷新UpdatePannel,友情提示UpdateProgress,分頁下拉框DropDownList
一般情況下:Gridview的分頁有l(wèi)inkbutton或者button,這樣要是想讓UpdateProgress提示,很簡(jiǎn)單,先讓GridView隱藏,然后給它加個(gè)OnClientClick就搞定!
在DropDownList的onchange事件里:
1
2
3
4
5
|
function selectChange() { if ($( "select option" ). is ( ":selected" )) { $( "#btn11" ).click(); } } |
跳轉(zhuǎn)到:
1
2
|
< asp:DropDownList ID = "ddlNeedPage" runat = "server" AutoPostBack = "true" onchange = "return selectChange();" > </ asp:DropDownList > |
1
2
3
4
5
6
|
function clearData() { //$("#<%=_gvGuest.ClientID %>").empty(); $( "#_gvGuest" ).empty(); //$("#<%=lblMessage.ClientID %>").hide(); $( "#lblMessage" ).hide(); } |
1
2
|
< asp:LinkButton ID = "lnkFirstPage" runat = "server" <span style = "color:#ff0000;" >OnClientClick="return clearData();"</ span > CommandName="Page" CommandArgument="First" Enabled="<%# ((GridView)Container.Parent.Parent).PageIndex != 0 %>">第一頁</ asp:LinkButton > |
但是DropDownList沒有OnClientClick事件,怎么辦?
因?yàn)樯厦嬲f了Button有Onclientclick我們可以想到借助Button來轉(zhuǎn)換一下!!!!
解決辦法:在頁面上放一個(gè)隱藏的button:
1
|
< asp:Button ID = "btn11" runat = "server" CssClass = "btnPage" Style = "display: none;" OnClick = "btn11_Click" OnClientClick = "return clearData2();" /> |
然后再OnClientClick事件里把下拉框的值賦給一個(gè)隱藏域
1
2
3
4
5
6
|
function clearData2() { var hidDDL = $( "#_gvGuest_ddlNeedPage" ).val(); $( "#hidNeedPage" ).attr( "value" , hidDDL); $( "#_gvGuest" ).empty(); $( "#lblMessage" ).hide(); } |
然后在click事件里將_gvGuest的PageIndex設(shè)置成隱藏域的value!
1
2
3
4
5
6
7
8
9
|
protected void btn11_Click( object sender, EventArgs e) { if (! string .IsNullOrEmpty(hidNeedPage.Value)) { _gvGuest.PageIndex = Convert.ToInt32(hidNeedPage.Value); BindData(); } } |
基本思路就實(shí)現(xiàn)了,相信通過上面一步步的實(shí)現(xiàn)大家對(duì)DropDownList設(shè)置客戶端事件也有了大概了解,希望這篇文章真真正正的能夠幫助到大家。