Page_Load:
if (!Page.IsPostBack)
{
    TextBox1.Attributes["onkeydown"]="if (event.keyCode==13) { document.all.Button1.click; return false;}"
}

解决方案 »

  1.   

    默认会响应第一个submit按钮,也就是<asp:Button>按钮
      

  2.   

    能像PHP那样,可以有个属性设置吗?
      

  3.   

    if Not IsPostBack then
        TextBox1.Attributes("onkeydown")="if (event.keyCode==13) { document.all.Button1.click; return false;}"
    End if
      

  4.   

    Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles MyBase.Load
        '在此处放置初始化页的用户代码
        TextBox1.Attributes.Add("onkeydown", "if(event.keyCode==13) document.all." + Button1.ClientID + ".click()")
        Button1.Attributes.Add("onclick", "alert('你点了')")
      End Sub
      

  5.   

    多谢大家,不过 acewang兄的不怎么对啊,要按两下回车,而且把
    if Not IsPostBack then
        TextBox1.Attributes("onkeydown")="if (event.keyCode==13) { document.all.Button1.click; return false;}"
    End if这段代码去掉后也是一样啊,要按两下回车才默认执行搜索引擎后面的那个按钮Click动作!
      

  6.   

    对了,那些TextBox1和Button1都是控件的ID吧,
      

  7.   

    我发现问题出现的情况了,请各位帮忙解决下,谢谢了!按回车后就执行Button的Click动作了,但是TextBox中的文字要再第二次执行时才被送进去!ViewState属性用False和True都试过了!都一样的,如何是好呀!
      

  8.   

    if Not IsPostBack then
        TextBox1.Attributes("onkeydown")="if (event.keyCode==13) { document.all.Button1.click; return false;}"
    End if
    ~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    上面的代码放在Page_Load里面,不要放在按钮事件
      

  9.   

    不要随便修改ViewState,默认是true
      

  10.   

    我是放在PAGE_LOAD里面呀,不过没效果了,要按两次,真是怪了!我晕倒了
      

  11.   

    是啊,我现在是用ViewState的默认值了,不知道是怎么回事,第一次按回车也提交页面了,也显示按扭被安下的动作了,但就是不执行按钮的Click程序,要第二次回车提交页面的时候才执行,晕死了,55555
      

  12.   

    <HTML>
    <HEAD>
    <title>WebForm1</title>
    <meta name="GENERATOR" Content="Microsoft Visual Studio .NET 7.1">
    <meta name="CODE_LANGUAGE" Content="C#">
    <meta name="vs_defaultClientScript" content="JavaScript">
    <meta name="vs_targetSchema" content="http://schemas.microsoft.com/intellisense/ie5">
    <script language=javascript>
    function clickbutton()
    {
    if(event.keyCode==13)
    {
    window.document.all.Button1.click();
    }
    }
    </script> </HEAD>
    <body MS_POSITIONING="GridLayout" onkeydown="if(event.keyCode==13) return false;">
    <form id="Form1" method="post" runat="server">
    <asp:TextBox id="TextBox1" onkeydown="clickbutton()" runat="server"></asp:TextBox>
    <asp:Button id="Button1" runat="server" Text="Button"></asp:Button>
    </form>
    </body>
    </HTML>
      

  13.   

    贴一下你的Page_Load里面的代码
      

  14.   

    Sub Page_LoadKeyWord.Attributes("onkeydown")="if (event.keyCode==13) { document.all.Search.click; return false;}"

    BindDateGrid()
       
    End Sub  Keyword是TextBox控件
    Search是Button控件上面的代码我全部试过了,都没有效果,很怪!不管要不要上面的代码,都要按两下回车,也就是要第二次提交页面的时候才执行默认Button里的Click动作,第一次好像是刷新,页面提交时Button控件没有被按下去的动作发生,第二次才可以看见按扭被按下去的动作,才可以执行按钮的onClick程序。
      

  15.   

    不管怎么样,很感谢大家,特别是acewang兄,虽然我不从事计算机业,但我很喜欢作网页,不过我很菜,写点程序都要一边看书一边写,大家写的程序代码我都觉得好不习惯,和书里的出入好大,呵呵,是不是我太菜了!KeyWord.Attributes("onkeydown")="if (event.keyCode==13) { document.all.Search.click; return false;}"这种代码我在书里从来没见过,呵呵,是不是高级书才介绍的啊
      

  16.   

    Sub Page_Load
    if Not IsPostBack Then
    KeyWord.Attributes("onkeydown")="if (event.keyCode==13) { document.all.Search.click(); return false;}"
    End if
    BindDateGrid()
       
    End Sub
      

  17.   

    window.document.Form1.Button1.click();