当前位置:嗨网首页>书籍在线阅读

11-讨论

  
选择背景色: 黄橙 洋红 淡粉 水蓝 草绿 白色 选择字体: 宋体 黑体 微软雅黑 楷体 选择字体大小: 恢复默认

11.2.3 讨论

指定固定格式时可以使用4个具有特别意义的字符:

a

字母字符a~z、A~Z。

9

0~9的任意数字。

*

任何字母和数字字符,也就是a~z、A~Z和0~9。

?

在此之后可以是任意字符。

任何其他字符(如 phone 掩码中的圆括号或者连字符)都被认为是字面量,插件自动将它们插入输入字段中,用户无法删除。

默认情况下,插件为每个可变字符插入下划线(_)。对于电话号码示例,输入字段获得焦点时将显示如下值:

(___) ___-____

当用户开始输入时,如果输入的是有效字符(数字),第一个下划线将被替代。其他字面量也会被跳过。

下划线占位符可以通过传递一个附加的参数自定义:

$("#phone").mask("(999) 999-9999", {placeholder: " "});

上述代码显示空格代替下划线。

也可以定义新的格式字符:

$.mask.definitions['~'] = '[+−]';
$("#eyescript").mask("~9.99~9.99 999");

上面定义了新的格式字符~,允许值为 +- ,指定的方式和正则表达式的字符类相同。以后,~可以用在固定格式中。

问号可以建立有固定部分和可选部分的格式。有可选分机号的电话号码可以这样定义:

$("#phone").mask("(999) 999-9999? x99999");

当组合固定格式和验证插件(秘诀11.1)时,重要的是为字段定义合适的规则。否则,验证插件可能将固定格式插件的占位符当作有效的输入,在用户刚插入第一个字符时,如果无效的字段被标识为有效,用户肯定不会高兴的。

局限性

这个插件主要的局限性是固定长度的要求。它不能用于可变长度的输入字段,如货币值。例如,“$ 999,999.99”要求输入100 000.00~999 999.99之间的值,而不能接受此范围之外的数值。