2012-12-05 45 views
4

我试图上的文本输入Android浏览器:编程更改

执行日期格式(00/00/0000)(输入具有最大长度=“10”和验证是分开处理聚焦的输入值)。

这里是我使用的代码(jQuery的):

 $(function() { 

      $('input').live('keydown keyup', function(e) { 

       var str = $(this).val(), len = str.length; 

       if (e.which != 8) { /* Backspace */ 

        if (len == 2 || len == 5) { 

         str += '/'; 

         $(this).val(str); 
        } 
       } 
      }); 
     }); 

这工作得很好,无论我除了对三星Galaxy Tab 10.1

Android原生浏览器,海豚浏览器测试的问题是,你可以”在聚焦时改变输入值:一旦焦点丢失,斜线出现在字符串的末尾。

此错误记载:http://code.google.com/p/android/issues/detail?id=39569

一个有点哈克解决方案将失去和当值需要更新恢复焦点,但是,让你失去每一次键盘。

任何关于如何找到解决方案的建议?

回答

0

你可以试试这个插件:

http://digitalbush.com/projects/masked-input-plugin/

,并指定:

$("input").mask("99/99/9999"); 

我没有三星平板自己进行测试。

+0

感谢您的回答,但我需要自己编写脚本的原因正是因为我测试的插件(包括您提到的插件)在Android上是bug(可能是由于同样的bug)。 –

+0

好的。只有其他解决方案发生在我身上的是有3个输入字段 - 输入2位数字后,DD,MM和YYYY分别自动从一个输入字段到另一个输入字段。 – mccannf