网页包含两个input,一个网页键盘,如何写能输入对应的input里?

ajun_code 发布于 2016/09/13 16:38
阅读 679
收藏 0
<p>员工号:</p>
            <input id="userName" type="text"/>
            <p>密码:</p>
            <input  id="userPassword" type="text"/>
            
            <table id="keyboard_container">
                <tbody>
                <tr>
                    <td id="number_1" class="ax_key clearLeftBorder">1</td>
                    <td id="number_2" class="ax_key">2</td>
                    <td id="number_3" class="ax_key">3</td>

                </tr>
                <tr>
                    <td id="number_4" class="ax_key clearLeftBorder">4</td>
                    <td id="number_5" class="ax_key">5</td>
                    <td id="number_6" class="ax_key">6</td>
                </tr>
                <tr>
                    <td id="number_7" class="ax_key clearLeftBorder">7</td>
                    <td id="number_8" class="ax_key">8</td>
                    <td id="number_9" class="ax_key">9</td>
                </tr>
                <tr>
                    <td id="cancer_txt" class="ax_key clearLeftBorder">取消</td>
                    <td id="number_0" class="ax_key">0</td>
                    <td id="delete_key" class="ax_key">删除</td>
                </tr>
                </tbody>
            </table>

<script>
  $("#keyboard_container").click(function(e){//数字键盘输入
            var  _this = e.target;     //获取事件源对象
            var id = $(_this).attr('id');   //获取对象的id
            var addNum = $(_this).html();
            var nowValue=$("#userName").val();
            var resultValue=nowValue+""+addNum;{
             if (id.match(/^(number_).*$/) != null){
                    $("#userName").val(resultValue);
                }else if (id.match(/^(delete_).*$/)!= null){
                    $("#userName").val("");
                }else if (id.match(/^(cancer_).*$/)!= null){
                    $("#userName").val("");
                    $("#userPassword").val("");
            }
        });</script>

两个input,要怎么写才能正确输入到对应的input里用focus不行呀??



加载中
0
wuyiw
wuyiw

var resultValue=nowValue+""+addNum;{

后面多了个{, 删代码了吗.

有两个input但是你写死了

$("#userName").val(resultValue);

自然不管focus谁.

解决办法是用一个变量指向当前input, 用focus事件来更改这个变量, 然后键盘操作在这个变量指向的input进行.

wuyiw
wuyiw
回复 @ajun_code : 对啊, 你输入前总要先点一下输入框再用软键盘输入吧? 点一下输入框那里的focus事件就将这个input存到那个全局变量里.
ajun_code
ajun_code
我的键盘也是网页写的,用在触屏机器。如果用focus事件,我点键盘的时候focus就没有在input上了
返回顶部
顶部