OnClick到底运行在哪,客户端?服务端?

.net开发新手,看到项目中有的控件包含OnClick和OnClientClick,有的控件包含OnClick和OnServerClick;那么问题来了,这个OnClick事件触发的方法到底运行在哪里呢?

dotnet.itlao5.com

不懂就要搞懂,经过一番折腾,终于明白了这属于两类控件。

asp控件OnClick和OnClientClick

在asp控件中,OnClick是执行后台C#方法,而客户端方法则通过OnClientClick执行。

需要注意的是:

  1. OnClientClick优先于OnClick执行
  2. OnClientClick中是这样写的“return click();”:如果返回为true,则会继续执行OnClick事件;如果为false,则中止

asp控件OnClick和OnServerClick

在asp控件中,OnClick是执行客户端方法,而服务端方法则通过OServerClick执行。

需要注意的是:

  1. OnClick优先于OnServerClick执行
  2. 如果通过OnClick控制OnServerClick是否执行,OnClick这样写“javaScript:if(clickJsMethod())”

runat=”server”

不管是html控件还是asp控件,都有一个属性runat,如果设置runat=”server”,可让控件变为服务端控件,此时,在服务端需要加入对应的方法,并且点击控件,当经过客户端click方法校验后,会执行服务端方法。

简书:ThinkinLiu 博客: IT老五

学习中,如果有误,欢迎一起探讨!

阿里云全网云主机特惠,企业级云服务器首购 3 年仅 3 折

发表评论

必填项已用*标注