Asp.Net 之 OnClientClick 与 OnClick 的执行顺序

Asp.net 中 OnClientClick 与 OnClick 的执行顺序为:客户端的OnClientClick先执行,服务器端的OnClick后执行。

拓展:在执行完客户端的OnClientClick事件后,可以以返回值的方式决定服务器端的OnClick事件是否能够被执行。

即:如果在OnClientClick所对应的前台方法中返回true,那么服务器端OnClick所对应的方法可以继续被执行;

     如果在OnClientClick所对应的前台方法中返回false,那么服务器端OnClick所对应的方法将被截断,不会继续执行。

 利用这一个特点可以进行客户端的验证处理,客户端验证通过了,那么继续执行服务器端的处理方法;如果客户端验证没通过,那么提示错误信息。

 

代码实例

<script language="javascript" type="text/javascript">
        function buttonClick() {
            alert("我是客户端点击事件");
            return false;     
        }
     </script>
protected void Button1_Click(object sender, EventArgs e)
{
    this.Label1.Text = "我是服务端点击事件";
} 
<form id="form1" runat="server">
    <div>
        <asp:Button ID="Button1" runat="server" Text="些Button是服务端控件,默认使用OnClientClick事件,请禁用浏览器的Js功能体验"
            OnClick="Button1_Click" OnClientClick="return buttonClick();" />
        <asp:Label ID="Label1" runat="server" Text=""></asp:Label>
    </div>

   </form>

 

posted @ 2017-06-26 14:57  zmztyas  阅读(757)  评论(0编辑  收藏  举报