我的一个页面上总共有一个按钮,我在页面的回车事件中写了别的js函数,但是当我回车的时候总是先激发js事件然后就激发按钮事件,把按钮换成html的控件倒是可以不激发,但是我的按钮事件在后台还处理了别的代码,不能换的……
大侠们给我看看吧?

解决方案 »

  1.   

    有个办法,挺笨的.做一个隐藏文本框. 值为0,<input name='flag' id='flag' /> //具体怎么写忘了. 反正就是个id为flag的文本框,你起什么名子都行.
    在你的按钮的onclientclick = "return IsAllowPostback()" 执行一个JS
    IsAllowPostback()
    {
        var isPostback = this.document.GetElementById("flag").value;
        if(isPostback == "1")
        {
             return true;
        }
        else
        {
             return false;
        }
    }
    然后再你的回车事件的最后一行加上. this.document.getElementById('flag').value = "0";
      

  2.   

    不是太明白什么意思。
    我的按钮要执行cs页面的事件的啊……
    也就是说回车要执行js事件
    按钮要执行cs页面的事件,
    现在是回车不但执行js事件还激发按钮的cs事件……
      

  3.   

    <asp:Button UseCommandBehavior="false" ... />
    试一下。
      

  4.   

    如果只想执行js事件,而不引起回发,那就<asp:Button OnClientClick="return false" ... />或者
    <script type="text/javascript">
    function Xxxx()
    {
       //....
       return false;
    }
    然后<asp:Button OnClientClick="return Xxxx();" ... />