首页 > Web开发 > 详细

DropDownList设置客户端事件思路

时间:2016-01-31 19:31:13      阅读:158      评论:0      收藏:0      [点我收藏+]

假设:数据源控件GrdiView,无刷新UpdatePannel,友情提示UpdateProgress,分页下拉框DropDownList

一般情况下:Gridview的分页有linkbutton或者button,这样要是想让UpdateProgress提示,很简单,先让GridView隐藏,然后给它加个OnClientClick就搞定!
在DropDownList的onchange事件里:

function selectChange() { 
      if ($("select option").is(":selected")) { 
        $("#btn11").click(); 
      } 
    } 

 跳转到:

 <asp:DropDownList ID="ddlNeedPage" runat="server" AutoPostBack="true" onchange="return selectChange();">
 </asp:DropDownList>

function clearData() { 
      //$("#<%=_gvGuest.ClientID %>").empty(); 
      $("#_gvGuest").empty(); 
      //$("#<%=lblMessage.ClientID %>").hide(); 
      $("#lblMessage").hide(); 
    } 

<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事件,怎么办?

因为上面说了Button有Onclientclick我们可以想到借助Button来转换一下!!!!

解决办法:在页面上放一个隐藏的button:

<asp:Button ID="btn11" runat="server" CssClass="btnPage"Style="display: none;" OnClick="btn11_Click" OnClientClick="return clearData2();"/>

然后再OnClientClick事件里把下拉框的值赋给一个隐藏域

function clearData2() { 
      var hidDDL = $("#_gvGuest_ddlNeedPage").val(); 
      $("#hidNeedPage").attr("value", hidDDL); 
      $("#_gvGuest").empty(); 
      $("#lblMessage").hide(); 
    } 

然后在click事件里将_gvGuest的PageIndex设置成隐藏域的value!

protected void btn11_Click(object sender, EventArgs e) 
    { 
 
      if (!string.IsNullOrEmpty(hidNeedPage.Value)) 
      { 
        _gvGuest.PageIndex = Convert.ToInt32(hidNeedPage.Value); 
        BindData(); 
      } 
    }

 基本思路就实现了,相信通过上面一步步的实现大家对DropDownList设置客户端事件也有了大概了解,希望这篇文章真真正正的能够帮助到大家。

DropDownList设置客户端事件思路

原文:http://www.jb51.net/article/72918.htm

(0)
(0)
   
举报
评论 一句话评论(0
关于我们 - 联系我们 - 留言反馈 - 联系我们:wmxa8@hotmail.com
© 2014 bubuko.com 版权所有
打开技术之扣,分享程序人生!