就是当我敲回车后,默认按钮事件被触发,我以前做过,好久没做,忘了
我现在是在form中写onkeydown,但是发现焦点在textbox,不在form时,提示网页有错误,缺少对象。
非要点以下form,再敲回车,请问该怎么做。

解决方案 »

  1.   

    js
    button是你的按钮ID,在文本框中触发:onkeydown="SubmitKeyClick(按钮ID)"
    <SCRIPT LANGUAGE="javascript">
    function SubmitKeyClick(button) 
    {  
     if (event.keyCode == 13) 
     {
       document.getElementById(button).focus();    
       document.getElementById(button).click(); }
    }
    </SCRIPT>另:
    http://metabuilders.com/Tools/FirstFocus.aspx
      

  2.   

    问题是,我是在asp.net环境中,
    这段代码是加在*.cs文件中,还是html中,
    另外如何加,很迷惑。
    我刚开始我也是这么想的,但.net的textbox没有
    onkeydown事件,写了报错,晕死,但我又不能用
    html的文本框,只能用.net的,这怎么办?
      

  3.   

    在后台加上
    textbox.Attributes("onkeydown")= "SubmitKeyClick(按钮ID)"
      

  4.   

    我越搞越糊涂了,
    写清楚些吧:
    1、html中怎么加?
    2、后台*.cs文件中怎么加?
      

  5.   

    请看下面,再自已试试吧
    System.Text.StringBuilder sb = new System.Text.StringBuilder(); sb.Append ("<script language=JavaScript> "); sb.Append ("function ConfirmDeletion() {"); sb.Append ("return confirm('你确认删除吗? ');}"); sb.Append ("</script>"); string js = sb.ToString(); if (!IsClientScriptBlockRegistered("ConfirmDeletion")) { RegisterClientScriptBlock("ConfirmDeletion", js); } //事件关联与javascript
    this.Linkbutton2.Attributes.Add("onClick", "return ConfirmDeletion();");
      

  6.   

    string  strJs  =  "if(event.keyCode  ==  13){{if  (typeof(Page_ClientValidate)  !=  'function'  ||    Page_ClientValidate())  __doPostBack('{0}','');}}";
    this.button.Attributes.Add("onkeydown",String.Format(strJs,this.Submit1.ClientID));
      

  7.   

    this.button.Attributes.Add("onkeydown",String.Format(strJs,this.Submit1.ClientID));
    上面的“button"是textbox
      

  8.   

    我试了没用,没任何反应.
    我想知道的是,这个Submit1是不是就是默认按钮,
    但怎么让代码执行Submit1的_click事件呢?我现在在cs文件的Page_load()事件中是这样写的:
    //设置默认登按钮////////////////////////////////////////////////////////////////string  strJs  =  "if(event.keyCode  ==  13){{if  (typeof(Page_ClientValidate)  !=  'function'  ||    Page_ClientValidate())  _doPostBack('{0}','');}}";
    this.textpassword.Attributes.Add("onkeydown",String.Format(strJs,this.imgbtnLogon.ClientID));

    感觉好像不对,该怎么修改? ////////////////////////////////////////////////////////////////////////////////////////
      

  9.   

    Submit1是默认按钮,前台
    <asp:textbox id="key" tabIndex="-1" runat="server">这个(“tabIndex="-1"”)别忘了 
    <asp:button  id="Submit1" runat="server">
    后台
    private void InitializeComponent()
    {   
    this.Submit1.Click += new System.EventHandler(this.Submit1_Click);
    this.Load += new System.EventHandler(this.Page_Load);
             }
    其他代码都一样,因该没错的。
      

  10.   

    不行,我试了,跟我开始写在form中一样的效果,只要在textbox中点一下,在敲回车,没有
    反应,只是textbox中的输入文本置空了。
    另外,我点击table控件以外的页面空白后,再敲回车,也没效果,跟我最开始一样,非得点一下
    table,z再敲回车才有用