zoukankan      html  css  js  c++  java
  • onclientclick与onclick的问题.

    <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的冲突了
  • 相关阅读:
    RHEL7挂载ISO做本地yum
    服务器虚拟化架构突出优势
    国内公共DNS
    世界上最小的发行版之一Tiny Core
    VMware v12.1.1 专业版以及永久密钥
    Webbench网站压力测试
    Web.xml配置详解之context-param
    SpringMvc自动代理
    SpringMvc aop before
    SpringMvc 面向切面1
  • 原文地址:https://www.cnblogs.com/gates/p/3159278.html
Copyright © 2011-2022 走看看