从隐藏领域获取价值

时间:2011-12-31 08:43:40

标签: jquery input hidden

当我给输入字段type = hidden时,为什么这不正常?当输入字段为nog隐藏时,警报会给我我想要的ID代码。

<input id="scanID" name="scanID" type="hidden">

$(document).ready(function(){
    $("#scanID").keypress(function(e){
     //key code 13 is "enter",  
        if(e.keyCode==13){   
                //print out the barcode
            alert($("#scanID").val());
                     //clear the input field for next scan
             $("#scanID").val('');
                    //kill the "enter" event
             return false;
            }
    });
});

2 个答案:

答案 0 :(得分:2)

那是因为隐藏元素无法获得焦点,因此按键事件永远不会发生在它上面。您应该使用不同的输入类型。

另一种解决方案是使用普通输入,使用CSS display: nonevisibility: hidden

答案 1 :(得分:2)

如果需要,可以将keypress事件添加到文档中:

<input id="scanID" name="scanID" type="hidden" value="yourValue">

$(document).ready(function(){
        $(this).keypress(function(e){
         //key code 13 is "enter",  
            if(e.keyCode==13){   
                    //print out the barcode
                alert($("#scanID").val());
                         //clear the input field for next scan
                 $("#scanID").val('');
                        //kill the "enter" event
                 return false;
                }
        });
    });