前台JS事件与服务器事件的执行顺序

(1)页面加载:

服务器端Page_Load------>前台js的onload事件

(2)服务器端控件(假如是按钮控件)

前台的js事件----->服务器端Page_Load----->服务器端按钮事件-------->前台onload事件

既:开始加载页面时,先执行服务器端onload事件,再执行客户端js的onload事件。 单击某个控件时,先执行该控件的客户端js单击事件,再执行服务器端的onload事件,然后执行该控件服务器端的单击事件,最后执行客户端js的onload事件。

情景:

RegularExpressionValidator, RequiredFieldValidator, CustomValidator等验证控件的ValidationGroup绑定一个控件ID,这个控件又有自己的onClientClick事件触发js脚本代码

顺序:onClientClick事件早于验证控件的前台JS验证

点击服务器控件后,要想先执行服务器事件,再执行客户端事件的话,该如何实现:

此情景为:点击Button按钮,往数据库中插入数据,若插入成功,在客户端使用JS弹出提示信息。

将客户端事件如此编写和放置:

    <script type="text/javascript">
    <%if(flag==1) {%>
        showWindow('comfirmationreminder_container',500,300);
    <%}%>
</script>
</form>

PPS:flag变量是用来标记后台数据是否插入成功的

PS:放置在form最后面;<% 里面可以直接写C#语句,放置后台参数%>

神奇的哇~

待续……

posted @ 2011-10-13 19:05  zhanglong0426  阅读(1045)  评论(0编辑  收藏  举报