2009-12-16 56 views
0

到目前为止,我一直只使用jQuery遮罩,但我发现在Mozilla中它们有一些问题。例如,如果我用$(".someClass").mask("9?9");屏蔽输入并输入一个数字'1',则Mozilla将提交"1_"的值,该值无效验证(是数字),但用户明确输入了正确的值。哪个是最好的输入掩码?

是否有像$(".someClass").mask("9?9");这样的面具不会显示最大数量的字符(本例中为2)的下划线,以便用户不认为他必须输入2个字符?

其他问题是,当你失去对被掩盖的领域的专注,但你只输入了第一个需要的字符。当你将注意力集中在场上时,它会从拉斯特字符继续,但会擦除已经输入的所有内容。

我也尝试过Telerik,但它有菜单错误和更多的下划线和光标位置问题。

如果您有任何建议和解决方案,请写信。

非常感谢。

回答

1

无法重现您的问题。检查demopage。如果只输入一个数字,输入的值就是该数字。 (什么jQuery版本?什么浏览器版本?)。提供能够再现您问题的小样本。

http://jsbin.com/egeyo3

你的面具看起来不错给我。如果您不希望用户认为他需要输入2个数字,则只需用空格替换默认占位符_即可。

jQuery(function($) { 
    $("#test").mask("9?9", {placeholder:" "}); 
}); 
+0

我使用的是最新的jQuery和mozilla。 我刚刚意识到,它通过客户端(是数字)验证,但在服务器上失败(代码在ASP.NET后面) – eomeroff 2009-12-17 00:00:19

+0

无法理解您的评论。您是否说ASP.NET对您的问题负责 – jitter 2009-12-17 02:14:02

+0

没关系我刚刚解决了您的问题,重现问题不要使用占位符并留下下划线,那么它会在Mozilla中保存1_。 谢谢。 – eomeroff 2009-12-17 08:45:20