我正在尝试对文本输入强制执行日期格式 (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);
}
}
});
});
除了三星 Galaxy Tab 10.1 上的 Android 本机浏览器和 Dolphin 浏览器外,这在我测试的所有地方都可以正常工作
问题是您无法在输入值聚焦时更改输入值:一旦失去焦点,斜线就会出现在字符串的末尾。
此错误已记录:http ://code.google.com/p/android/issues/detail?id=39569
当需要更新值时,一个有点笨拙的解决方案是失去并重新获得焦点,但这会让你每次都失去键盘。
关于我如何找到解决此错误的方法的任何建议?