我正在使用PhoneFormat格式化我的angularjs应用程序中的电话号码。在纯显示页面中,以下代码行运行良好。
<td>{{contact.PhoneNumber | tel}}</td>
但是在编辑或创建新页面中,以下代码行不起作用。意思是,它没有格式化为(xxx)xxx-xxxx .. 它只是简单地显示为7145551212类型的数字。
<div class="form-group">
<label class="col-sm-3 control-label" for="PhoneNumber">Cell Phone Number</label>
<div class="col-sm-9" >
<input type="text" data-ng-model="contact.PhoneNumber | tel" id="PhoneNumber" name="PhoneNumber" class="form-control" />
</div>
</div>
过滤器的代码如下:
angular.module('appointmentReminderApp')
.filter('tel', function () {
return function (phoneNumber) {
if (!phoneNumber)
return phoneNumber;
return formatLocal('US', phoneNumber);
}
});
答案 0 :(得分:2)
您可以在控制器内格式化它并将该值分配给模型
代表:
$scope.PhoneNumber = $filter("tel")(7145551212);
并且不要忘记将$filter
注入控制器。
app.controller("testCtrl" , function($scope , $filter) {....
这是一个简单的演示Fiddle