这个想法8错,看看,捕捉 CapsLock 的 keyCode 应该可以

解决方案 »

  1.   

    试下...没做过
    页面放置个div id=test
    <script>
    function YourDown(e)
    {
    var IEKey=event.keyCode;
    if(IEKey=="20")
    {
    document.getElementById("test").innerText="大写打开";
    //如果再按一次关闭大写的话可以简单判断下div的innerText是否为空.不为空则提示关闭.}
    }
    document.onkeydown=YourDown; 
    </script>
      

  2.   

    如果是ns4的var keyvaule=e.which
      

  3.   

    to: sqllong(阿秋)(命运就是为你心爱的人建造一座机会的桥梁!)怎么实现啊
      

  4.   

    现在我只能实现页面刷新后的效果,估计要用ajax能实现. 期待高手!
      

  5.   

    我试过了,好像按 CapsLock , onkeypress onkeydown ... 都不响应况且仔细一想,这个功能,纯粹的 js 似乎无法实现满意的效果,假如当前页面逝去焦点,用户切换了 CapsLock 见,然后回到页面,根本就无法检测到 CapsLock 的状态,要么就是只有找插件帮忙了,搞个 ActiveX/Applet
      

  6.   

    在C#里这样 
    导入这个:[DllImport("user32",CharSet = CharSet.Ansi,SetLastError = true,ExactSpelling = true)]
        声明一下这个:public static extern int GetKeyState(int Key);
    然后
     if ((GetKeyState(20) & -1) > 0)
            {
                Label1.ForeColor = System.Drawing.Color.Red;
                Label1.BackColor = System.Drawing.Color.Gray;
                Label1.Text = "大写琐打开";
                //Response.Write("document.getElementById('text1').value='大写琐打开';");        }这样可以显示,但是只有一次,后来我在控件上加了autopostback,要好一点,基本实现,但是需要刷新页面.
    我不知道大家有没有别的办法!我现在只能做到这一步!
      

  7.   

    用局部刷新一般都是第一次光标在textbox里做提醒,在输入过程中没必要做提醒 所以不应该用 onKeyDown onKeypress
    而是 onFocusonFoucs 用Ajax 传递一个参数给后台 比如 action=inputpassword后台 if(Request.QueryString["action"]=="inputpassword")
    {
      //执行你的C#判断当前的capslock的状态
      if   ((GetKeyState(20)   &   -1)   >   0) 
      {
        Respone.Write("on");Response.End();
       }
    }而Ajax这边xmlHttp.responseText得到是 on 的话
    显示已经隐藏很久的 大写提示Div