我正在尝试在文本输入上强制执行日期格式(00/00/0000)
(输入的maxlength =“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);
}
}
});
});
除了Android本机浏览器和三星Galaxy Tab 10.1上的Dolphin浏览器外,我测试的每个地方都能正常工作
问题是你无法在聚焦时改变输入值:一旦焦点丢失,斜杠会出现在字符串的末尾。
此错误记录在案:http://code.google.com/p/android/issues/detail?id=39569
当价值需要更新时,一个有点hacky的解决方案会失去并重新获得焦点,但这会让你每次都丢失键盘。
关于我如何找到绕过这个bug的方法的任何建议?
答案 0 :(得分:0)
你可以尝试这个插件:
http://digitalbush.com/projects/masked-input-plugin/
并指定:
$("input").mask("99/99/9999");
我自己没有测试三星平板电脑。