Asp.net 中 OnClientClick 与 OnClick 的区别

OnClientClick 是客户端事件处理方法,一般采用JavaScript来进行处理,也就是直接在IE端运行,一点击就运行。

OnClick 是服务器端事件处理方法,在服务器端也就是IIS中运行,点击后,先执行postback,再运行。

 

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

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

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

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

 

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

比如以下实例:saveFunc对数据进行验证,当验证通过返回true时,执行服务器端方法进行保存,验证不通过返回false,服务器端的保存方法就不会执行。

<asp:Button ID="btnSave" runat="server" Text="Save" OnClick="btnSave_Click" OnClientClick="return saveFunc();" />

转载于  https://www.cnblogs.com/rxhuiu/p/9172007.html

原文地址:https://www.cnblogs.com/ZQ1437487263/p/13576515.html