none
服务器端botton引用事件的困惑 RRS feed

  • 问题

  • 一般,在操作中,如果需要给服务器端得按钮加一个客户端验证事件:那么这样写的
     this.btnAdd.Attributes.Add("onClick", "return check();");

    但是,今天我看了下,另外一种写法,就搞不清了,是怎么个调用法
    <asp:Button ID="btn_upfile" runat="server" CssClass="btn" Text=" 上 传 " OnClick="btn_upfile_Click">
    </asp:Button>
    这里的OnClick="btn_upfile_Click"并非是客户端的JavaScript验证,而是upfile.cs文件中的
    根据上传的情况返回的值,
    if
    {
    ......
    }
    else
    {
    this.Message = "请选择您要上传到服务器的文件!";
    this.Result = false;
    }
    有点理解不了,这是怎么触发的? 能否详细解说下呢,很疑惑。


    2010年2月5日 2:37

答案

  • OnClick执行的是服务器端事件,在服务器端执行
    OnClientClick是客户端事件

    你的OnClick="btn_upfile_Click"执行的就是服务器端事件,

    验证事件一般都是有客户端JS来进行的,

    this.btnAdd.Attributes.Add("onClick", "return check();");添加的客户端事件,
    但是对HTML控件来说onClick就是客户端事件
    服务器按钮在运行后就被解析成HTML标记了,你查看下你运行后的网页的源文件就知道了
    努力+方法=成功
    2010年2月5日 2:51