zoukankan      html  css  js  c++  java
  • Javascript阻止服务器控件执行服务器端代码的问题

    通过Javascript在客户端执行一定的验证然后再决定是否执行服务器端代码。这是一个很常用的功能。

    但是为此我花费了几个小时,才完全弄清楚。

    一般来说Javascript函数返回False,却服务器控件不会继续执行服务器端代码。

    一开始我这样写:

    <script type="text/javascript">
            function a() {

                if (confirm("是否充许执行客户端代码?")) {

                    return true;
                }
                else {
                    return false;
                }   

            }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <asp:Label ID="Label1" runat="server" Text="Label"></asp:Label>
        <div>
            <asp:Button ID="Button1" runat="server" Text="Button"
                onclick="Button1_Click" OnClientClick="a()"/>
        </div>
        </form>
    </body>

    无论怎样,服务器端代码还是照样执行。

    后来我把上面红色的那部份换成了:

    OnClientClick="return a()"

    成功了。

    这里的关键是Return这个关键字。没写它无论如何都不会成功。

    在后台程序中这样写也是可以的:

    this.Button1.Attributes.Add("onclick", "return a()");

  • 相关阅读:
    2018
    线程的五大状态
    SQL 列转行与行转列
    python中元组(tuple)的拆包unkacping
    python字典的相关操作总结
    C语言使用typedef进行类型重定义
    C++中namespace的用法理解
    ping: unknown host 解决办法
    go环境变量配置liteide配置
    svn出现Authorization failed
  • 原文地址:https://www.cnblogs.com/blogzys/p/2606786.html
Copyright © 2011-2022 走看看