gate_s

  博客园 :: 首页 :: 博问 :: 闪存 :: 新随笔 :: 联系 :: 订阅 订阅 :: 管理 ::

<script language="javascript" type="text/javascript">

            document.getElementById("txtLoginName").focus();

            function check() {
                if (document.getElementById("txtLoginName").value == "") {
                    alert("请输入用户名");
                    document.getElementById("txtLoginName").focus();
                    return false;  ;// 当返回FALSE的时候就可以阻止后台提交了

                }
                if (document.getElementById("psd").value == "") {
                    alert("请输入密码");
                    document.getElementById("psd").focus();
                    return false;
                }
                if (document.getElementById("TxtVerify").value == "") {
                    alert("请输入验证码");
                    document.getElementById("TxtVerify").focus();
                    return false;
                }
                return true;
            }


            function GetCode() {
                var num = Math.random();
                var tempImg = document.getElementById("imgValiRegister");

                tempImg.src = "AdminHandler/ValidateCodeHandler.ashx?by=register&t=" + num;
                return false;
            }

            $(function () {
                //检测浏览器类型
                var currBrowser = $.browser;

                if (currBrowser.msie) {
                    if (currBrowser.version == '6.0') {
                        alert("您当前使用的浏览器版本过低,请升级到高级版本或使用其他浏览器");
                    }
                }
            });
        </script>

 

<asp:Button ID="Button1" runat="server" Text="Button" 
            OnClientClick="return Check()"
            OnClick="Button1_Click" />
            <!--OnClientClick这个地方一定要写上 return-->
 
onlick时发生postback,执行后台代码。 
onclientclick,就是执行javascipt代码,不会发生postback. 

简单说,onclick:执行C#代码, onclientclick:执行javascript代码。

onclientclick先于onclick发生,一般执行脚本

onclientclick() 控制客户端提交。 
例如可以使用confirm('是否执行?') 

return true:执行onlick事件。 
return false:什么都不干。

再得来说:
OnClick是button的服务器端事件

OnClientClick是button的客户端事件

一般我们用 OnClientClick验证我们的提交数据,但是这个一定要返回ture或者false,即一定要加上return,否则OnClick失效。当返回false时OnClick服务器端事件才被中止,当你的js验证有错误,也会跳过验证,直接执行服务器端事件OnClientClick。为了避免这样的错误,可以考虑用服务端验证这样就省去了OnClientClick事件,就不用考虑和OnClick的冲突了
posted on 2013-06-27 17:48  gate_s  阅读(653)  评论(0编辑  收藏  举报