本帖最后由 liuxiulian 于 2010-05-26 11:24:32 编辑

解决方案 »

  1.   

    查看源代码,
    看看你的Button1的真正id是多少!!
      

  2.   

    onkeydown=""页面第一次加载的时候不会执行的 必须要postback一次以后才行
    具体的原因不清楚,好像是因为viewsate的原因 涉及到控件状态的注册。
    建议lz考虑别的办法实现功能吧。
      

  3.   

    我设断点调试过,id没问题-- Button1_Click()确实被执行了--
      

  4.   

    加一句:
    .....
    event.returnValue = false;
    document.getElementById("Button1").click();
      

  5.   

    唉!省省精力不好么?为今后造福啊。asp.net是什么,是输出html+javascript的嘛。如果你第一个意识是去写 ThenClick 那种东西,之后再顺着这个思路去凑更多的代码,不乱才怪。要让TextBox触发按钮,只需要写一句: protected void Page_Load(object sender, EventArgs e)
    {
        this.TextBox1.Attributes["onkeyup"] = "if(event.keyCode==13){" +
                this.Page.ClientScript.GetPostBackEventReference(this.Button1, string.Empty) + ";}";
    }
      

  6.   

    楼主获取服务器端控件id方式错了function ThenClick(o)
          {
            if(event.keyCode==13)
            {
            
              if(o==document.all.TextBox1)
              {
             
                document.getElementById ("<%=Button1.ClientID%>").click(); 
               alert('哈哈,我成功了!'); 
               window.location.href="地址";
    //这里加上这句alert()后,代码执行后台Button1_Click()事件,页面跳转到新页面成功;如果没有加这个alert(),代码执行后台Button1_Click事件,但页面没发生跳转
               }
              else
              {
                 document.all.Button1.focus();
               // document.getElementById ("<%=Button1.ClientID%>").click();
              }
            }
          }
      

  7.   

    谢谢各位朋友,
    非常谢谢sp1234。大哥这种方法,从未用过--我会努力向你们这样水平的编程方式靠近的!!
    --
    我还是想搞明白,出现这种页面无法跳转的原因!
    谢谢koukoujiayi加了一个event.returnValue=false;
    或者是加上一个 alert('..');
    click()事件里的 Response.Redirect ("Default.aspx");成功执行。
    为啥呢?