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()");

  • 相关阅读:
    em和rem
    uniapp小程序 插槽 使用 template 失效!
    大半夜睡不着,来个雪花动画
    opencv 修改像素为透明色
    C++ unsigned char 和 char 的转换示例(数组没试)
    切割矩形,C++版
    清除blob生成图片的缓存
    C++ 固定长度的队列
    Chrome神器Vimium快捷键学习记录
    ASC简介
  • 原文地址:https://www.cnblogs.com/blogzys/p/2606786.html
Copyright © 2011-2022 走看看