繁体   English   中英

当我专注于文本框时如何显示Caps,Shift,Enter按钮

[英]How to display Caps,Shift,Enter buttons when i focus on textbox

我已经使用javascript为虚拟键盘编写了以下代码。

Jsp页面:

   <form>
        <label for="text">Enter Text: </label>
        <input id="text" name="text" type="text" size="50" onfocus="myFunction(this)" />
        <input name="" type="reset" value="Clear" />
     </form>

Javascript:

 function myFunction(x)
    {                    
    }

    function clicked(val)
    {   
        var txt;
        txt = document.getElementById('text').value;

        if(val != 'B')
        {
            txt = txt + '' + val;
        }
        else
        {
            txt = txt.substr(0,(txt.length)-1);
        }
        document.getElementById('text').value = txt;
    }
 $(".dialog").dialog({
        autoOpen: false,
        height: 200,
        width: 930,
        modal: false,
        draggable: true,
        resizable: true,

        buttons : {

                        "ESC":function(){
                var val="Esc";
                clicked(val);

            },

            "1":function(){
                var val="1";
                clicked(val);
            },

            "Tab":function(){
                var val="T";
                clicked(val);
            },
            "Caps":function(){
                var val="q";
                clicked(val);
            },




            "Shift":function(){
                var val="";
                clicked(val);
            },

            "B":function(){
                var val=" ";
                clicked(val);
            },





        },

});

当文本框被集中显示时,像键盘一样的对话框,当我单击某个按钮时,其在文本框中输入的按钮值(大写,Shift,Enter和Tab)除外。

请提供这些Caps,Shift,Enter,Tab所需的代码。

我不确定如何在clicked(val)方法中维护代码。

当用户按下Shift / Caps键时,最好设置一个标志,而不是在文本框中插入任何内容。 例如:

"Shift":function(){
                isShift=1;
            }
"Caps":function(){
                isCap=1;
            },

然后在插入字母时检查标志。 如果设置了isShiftisCap ,则插入大写字母。 同样, isShift应该设置为0

这只是PoC代码,您将知道如何实现它。

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM