键入隐藏的输入字段

时间:2014-08-08 07:53:36

标签: jquery html5 jquery-ui jquery-mobile barcode

我手上有一种特殊的问题,我希望ppl的一些建议可能已经实现了类似的东西。

我有一个客户端使用EAM扫描仪扫描条形码,通过蓝牙作为键盘单元连接到移动设备。

在所说的移动设备上,我们有一个运行JQuery Mobile / HTML5的Web框架。他们想用这个扫描仪。我们想要实现的是让扫描仪为某种不可见的字段拾取条形码,然后根据扫描的值,这将用于启用UI中先前禁用的可折叠。

我已经对使用文本字段和触发keyup-event进行了测试,如果输入的值对应于可折叠的数据属性,则在每个字符传递时继续检查。这似乎工作正常。

但我不希望用户看到输入字段(它应该被完全隐藏)但它仍然需要关注并能够接受按键。如果我在样式中设置visibility:none,则不再触发keyup事件。

那么,我如何创建一个在UI中不可见的输入字段,但可以通过代码设置为焦点,并接受文本来触发密钥?

我试过输入类型="隐藏"同样,但似乎不接受输入或焦点。

我的测试代码:

     $(document).ready(function() { 
          $( '#f1' ).collapsible("disable");
          $( '#f1' ).trigger("create");
          $( '#f2' ).collapsible("disable");
          $( '#f2' ).trigger("create");
          var value = ""; //Store entered information
      //Add key handler, to the div including the text field, to avoid other text 
      //  field being blocked out
    $( "#page_wrapper" ).keypress(function(event) {
     //Translate key to char and append 


     value += String.fromCharCode(event.which);

     /*
      * Cut out
      */


     //Iteration here to check all collapsibles if the data value entered is valid for   
     //one of them, after checking 
     //input lenght, to make sure it is a complete EAN barcode 

     //Make sure to clear to limit input
     $( "#scanfield" ).val("");



        //Focusing on the field
        $( '#scanfield' ).focus(); /* CUT */

1 个答案:

答案 0 :(得分:4)

您是否尝试过JQM课程ui-hidden-accessible

来自JQM CSS

.ui-hidden-accessible {
  position: absolute !important;
  height: 1px;
  width: 1px;
  overflow: hidden;
  clip: rect(1px,1px,1px,1px);
}