本来就是先执行javascript再执行 server side script啊。

解决方案 »

  1.   

    可能是你的javascript没写对吧, 拿过来看看
      

  2.   

    在按钮中加入onclickclick事件,例onclickclick="js()",js()是js方法名
    onclickclick="js()"调用后台事件
    onclickclick="return js()"不调用后台事件
      

  3.   

    我的原意是:
       在用户login 的时候, 先用javascript合法验证,如果正确就运行server side 的代码, 如果不是,就跳出窗口,提示错误。如果可以给个例子! 万分感激!
      

  4.   

    类似 询雷blog 的登陆 http://blog.xunlei.com/
    对了,返回时不要刷新, 否则浮动窗口就不见了
      

  5.   

    在 button的属性里面有一个 onClientScript的事件,你让onClientScript="verify();" 然后设置一个Onclick="" 这样就是先执行 verify()这个javascript函数然后再执行后台事件的~....
    不知道我的理解对不对!
    GOOD LUCK
      

  6.   

    客戶端:
        function  check()
    {
    //數據驗証
      if(name=="")
    {
    //返回,不執行。
    return;
    }
    }
      

  7.   

    Page.RegisterOnSubmitStatement("onsubmit", "return submitform()");
      

  8.   

    <asp:Button id="btnLogin" runat="server" OnClientClick="return check();" OnClick="btnLogin_Click" />function check()
    {
       if(判断登录的条件)
       {
         alert("用户名或密码错误");
         return false;
       }
    }protected void btnLogin_Click(object sender, ImageClickEventArgs e)
    {
       Response.Redirect("登录后跳到的页面");
    }
      

  9.   

    代码方得地方不对,放在page_load里。
      

  10.   

    好像return false 不管用
      

  11.   

    管用的哦~....  但是前提是 在OnclientClick里面一定要加上Return 语句 这样才会管用的~.
      

  12.   

    不好意思,刚才看到自己的帖子换了一个很严重的错误~..... 竟然把OnClientClick 误写成OnClientScript....
    I am sorry!!!......  正确的写法是OnClientClick......
      

  13.   


    <head runat="server">
        <title>无标题页</title>
        <script language="javascript">
        function check()
        {    
            var email = document.getElementById('TextBox1'); 
            var pwd = document.getElementById('TextBox2'); 
            if  (email.value=="" || pwd.value=="") 
            {
                alert("请填写完整内容"); 
                return false;
            }
            else
            {
                var mailStr = /((\w)+)@((\w)+).[cc|com|net|org|tv|cn]/ig; 
                if (!mailStr.exec(email.value))
                { 
                    alert('Email地址书写不正确!\n请您重新输入!'); 
                    email.value = ''; 
                    email.focus(); 
                    return false; 
                }             
            }        
        }
        </script>
    </head>
    <body>
        <form id="form1" runat="server">
        <div>
            <asp:TextBox ID="TextBox1" runat="server"></asp:TextBox>&nbsp;
            <asp:TextBox ID="TextBox2" runat="server"></asp:TextBox>
            <asp:Button ID="Button1" runat="server" Text="Button" OnClientClick="check()" OnClick="Button1_Click1"  /></div>
        </form>
    </body>上面这段是ASPX文件主体,页面上有两个TextBox 和一个Button ,Button 有两个事件,一个客户端事件,一个写在后配代码CS文件中,如下
    protected void Button1_Click1(object sender, EventArgs e)
        {
            Response.Write("OK");
        }执行时,当我按下按纽,好像是OnClientClick 事件先执行验证,难过验证后执行OnClick事件输出OK,但如果没有难过验证,会弹出提示框,点提示框的确定后也会输出OK,这就不是我想要的了,如何在验证不通过的时候就不再执行OnClick?--------------------------------------------------------------------------------
    回复:Button 控件的 OnClientClick 和 OnClick 事件执行顺序问题当然先执行客户端的javascript函数,页面回送以后再执行服务器端的方法
    OnClientClick="check()"
    改成
    OnClientClick="return check()"
      

  14.   

    啊 我 写成 return 没有加false  现在好了 感谢楼上的