使用 jQuery 插件自动格式化结构化数据(电话、日期)(或无法使用原生 JavaScript)

Posted

技术标签:

【中文标题】使用 jQuery 插件自动格式化结构化数据(电话、日期)(或无法使用原生 JavaScript)【英文标题】:Auto-format structured data (phone, date) using jQuery plugin (or failing that vanilla JavaScript) 【发布时间】:2010-09-11 17:04:23 【问题描述】:

我喜欢 jQuery,我想知道是否有人使用了一个好的插件或(非 jQuery)javascript 库,允许自动格式化电话号码或日期等结构化字段。我知道 jquery-ui-datapicker 插件,而不是我在这里寻找的。您可以输入电话号码为 123,然后变为 (123),其他号码将格式化为 (123) 456 7890 Ext。 123456. 如果您按删除,自动格式化的东西会自动消失,重新定位光标,例如,在 (123) 之后并按删除将删除 3 并使其余的 (124) 567 8901 分机。 23456. 我玩过的似乎不靠谱。

【问题讨论】:

【参考方案1】:

the Masked Input plugin 是否满足您的需求或您已经发现不可靠的那个?

【讨论】:

非常接近,感谢您的指点。如果我输入一个电话号码,然后删除一个数字并使我的输入消失的字段散焦(啊)。 此问题已在最新版本中得到修复。您现在可以添加“?”到掩码,这意味着后面的任何内容都是可选的。所以你可以添加掩码“?(999)999-9999”来允许部分电话号码。这对扩展特别有用。 您的链接似乎已损坏...这是同一个插件吗? digitalbush.com/projects/masked-input-plugin/#demo @TechplexEngineer 似乎是指向同一插件的有效链接。感谢您指出损坏的链接。 @TechplexEngineer 插件代码在github.com/digitalBush/jquery.maskedinput 上仍然可用,但存储库已存档【参考方案2】:

艾伦,

我相信您最好的选择是在两种单独的格式化方法中使用正则表达式,以获得所需的结果。对于电话号码,这将是相当直接的,如果在我坐下来并有 10 分钟的时间直接写一些东西时没有发布一个代码示例,我将发布一个代码示例。也许对于日期字段,您可以改用 jQuery UI Datepicker 之类的东西? http://marcgrabanski.com/pages/code/jquery-ui-datepicker

HTH,

/sf

【讨论】:

对于日历插件,我实际上是指 ui-datepicker,据我所知不适合。

以上是关于使用 jQuery 插件自动格式化结构化数据(电话、日期)(或无法使用原生 JavaScript)的主要内容,如果未能解决你的问题,请参考以下文章

国际电话输入 JQuery 插件 - ajax html 响应后的呼叫集实例

国际电话输入 jquery 插件 utilsScript 加载错误

用于单独输入字符的 jQuery 插件(例如用于电话令牌验证)

JAVAWEB学习笔记28_jqueryAjax:json数据结构jquery的ajax操作和表单校验插件

如何使用 jQuery 格式化电话号码

如何使用包括 iOS 的 jQuery 格式化电话号码