<script language="javascript">
    function EnterTextBox(button)
      {
         if(event.keyCode == 13 && document.all["TextBox1"].value != "")
            {
             event.keyCode = 9;
             event.returnValue = false;
             document.all[button].click();
         }
    }   
</script>在PageLoad事件里
txt_gh.Attributes.Add("onkeypress", "EnterTextBox('Button1')");我发现这段代码当我的BUTTON1的VISABLE=TURE时,可以正常使用。当VISABLE=FALSE时,不能正常使用,页面只是刷新下。可是我程序设计要求BUTTON1隐藏,请各位说说?

解决方案 »

  1.   

    你把BUTTON1写到js隐藏咯 style="display:none;"
      

  2.   

    用BUTTON1放在一个隐藏的div里
      

  3.   

    button1的宽度和高度都等于0PX即可。如果隐藏,将找不到此对象,另外,建议你的document.getElementByID来查找对象,ID用Button1.ClientID
      

  4.   

    event.returnValue = false; 
    为什么要为false?
      

  5.   

    把button的背景色和边框都给去掉,位置还在,但看不到了.
      

  6.   

    设置button隐藏
    <asp:Button ID="Button1" runat="server" style="display:none" Text="Button1" />
      

  7.   

    不用这么曲折。只要一行代码,无需假借一个隐藏的Button控件:
      this.TextBox1.Attributes["onclick"] = "if(event.keyCode==13)" +
          this.Page.ClientScript.GetPostBackEventReference (this.TextBox1, "null");
    把它放在page_load事件程序中,那么TextBox1每当客户端录入过程中输入回车,就会回发,并且直接触发TextBox1的 TextChanged 事件,这是多么直接!
      

  8.   


    这里的“Button1”和“TextBox1”写法是太武断的。实际程序中,并不保证总是这个名字。应该使用控件的 UniqueID 属性在运行时(每一次页面处理时)动态获得客户端id。