用html控件搭配javascript不要用web控件。

解决方案 »

  1.   

    文本框.AddAttribute("onkeydown","javascript:if(event.keyCode==13)event.keyCode=9;");
      

  2.   

    我这样写了一个js函数作为文本框的onkeydown事件,可是不起作用:
    function click(button) 
    {    
    if (event.keyCode==13) 
    {        
    document.all[button].click(); 
    }
    }
      

  3.   

    在webform里,总会默认的把第一个按钮作为提交表单给服务器的按钮,所以在页面打开时,
    直接敲“回车”都会触发这个按钮,比如“登录”按钮,而不是当文本框获得焦点,敲“回车”才触发按钮。应该都有碰到这个问题吧,有好的解决办法吗?
      

  4.   

    在页面onload中设置文本框获取焦点:document.all.txtucode.focus();
      

  5.   

    JS就可以了<input id=input1 type=text> <input type=button onclick=sendmessage1()>
    <input id=input2 type=text>   <input type=button onclick=sendmessage2()><script>
    input1.onkeydown=
    input1.onkeypress=
    function CheckEnter()
    { sendmessage1()}input2.onkeydown=
    input2.onkeypress=
    function CheckEnter()
    { sendmessage2()}
    </script>
      

  6.   

    修改文本框的onkeydown事件函数:
    function click(button) 
    {    
    if (event.keyCode==13) 
    {        
    document.all[button].click(); 
                      return false;
    }
             return true;
    }
    --------------
    <input type=testbox onclick="return click('button1');">
      

  7.   

    楼上的,多谢你gz,
    但是我已经就是这样写了,不起作用呢。另外有个问题,当首页显示出来,直接敲“回车”就会触发“登录”按钮,
    这是由于每个aspx页面都会把第一个按钮作为默认的提交表单的按钮。
    有什么办法可以去掉这个bug
      

  8.   

    onkeydown="if(event.keyCode==13) document.all.button100ID.click()"
      

  9.   

    添加一个判断 如果表单为空返回falsebutton.attributes.add("onclick","return docheck()");funciton docheck()
    {
      if (txt.value=="")
      return false;
      else 
      return true;
    }
      

  10.   

    net_lover(孟子E章) ,
    我的页面上有一个登录的按钮,有一个搜索的按钮,
    我用了你的方法,在登录文本框获得焦点(不输入情况下),回车,触发的是登录按钮,提示“请输入用户名!”,确定,又弹出一遍提示“请输入用户名!”,
    同样的,在搜索文本框获得焦点(不输入情况下),回车,触发的是搜索按钮,提示“请输入关键字!”确定,又会弹出提示“请输入用户名!”,就是相当于表单还是默认执行了一次默认按钮(登录)的触发。
      

  11.   

    现在关键就是怎么去掉这个bug:
    直接在页面上敲“回车”,webform会触发默认的按钮。
    这样就造上我上面提到的问题,
      

  12.   

    加上"return false;"不是可以取消触发默认的按钮!
    为何你说不行?
    一定要在input元素中加上return语句:<input type=testbox onclick="return click('button1');">
    例如你刚说net_lover(孟子E章)的方法:
    onkeydown="if(event.keyCode==13){document.all.button100ID.click();return false;}return true;"
    不加return语句必定会触发默认的按钮。
      

  13.   

    to engine_(engine) :
    你说的我明白了,多谢!首页出来后,不管登录文本框有没有获得焦点,敲“回车”都会触发“登录”按钮,这个好象是webform的一个bug,(你可以试试看)
    可以在webform里实现只有当文本框获得焦点后,回车才触发按钮吗?