Javascript AngularJS:用破折号格式化5位或9位的邮政编码
有一个字符串表达式Javascript AngularJS:用破折号格式化5位或9位的邮政编码,javascript,html,angularjs,filter,format,Javascript,Html,Angularjs,Filter,Format,有一个字符串表达式{{zipcode}},显示5位或9位数字 自动以xxxxx或xxxxx-xxxx格式显示此邮政编码的最佳方式是什么 我相信使用过滤器是一个不错的选择,但与过滤器和ui掩码有些混淆 谢谢。使用过滤器确实是解决这个问题的方法。以下是两种解决方案: 使用模块 您可以使用此筛选器添加项目并格式化邮政编码: {{981222735 | zipcode} 自己动手 以下是此过滤器的工作原理: 接收输入 验证它是否有5位或9位数字 如果zipcode有9位数字,则返回格式化的zipcode
{{zipcode}}
,显示5位或9位数字
自动以xxxxx
或xxxxx-xxxx
格式显示此邮政编码的最佳方式是什么
我相信使用过滤器是一个不错的选择,但与过滤器和ui掩码有些混淆
谢谢。使用过滤器确实是解决这个问题的方法。以下是两种解决方案: 使用模块 您可以使用此筛选器添加项目并格式化邮政编码:
{{981222735 | zipcode}
自己动手
以下是此过滤器的工作原理:
angular.module('myApp',[])
.filter('zipcode',函数(){
返回函数(输入){
如果(!输入){
返回输入;
}
if(input.toString().length==9){
返回input.toString().slice(0,5)+“-”+input.toString().slice(5);
}else if(input.toString().length==5){
返回input.toString();
}否则{
返回输入;
}
};
});代码>
5位邮政编码:{981222735 | zipcode}
9位邮政编码:{98122 | zipcode}