【发布时间】:2017-06-05 00:54:38
【问题描述】:
<div layout="column">
<md-input-container class="md-block" flex-gt-sm>
<label translate>Company Phone</label>
<input name="companyPhoneNumber"
ui-mask="0(999)-9999999"
ng-model="vm.model.companyPhoneNumber"
ng-required="true"
ng-minlength="11"
maxlength="11"
md-maxlength="11" />
<div ng-messages="form.companyPhoneNumber.$error" ng-if="form.companyPhoneNumber.$dirty"
role="alert" ng-messages-multiple>
<div ng-message="md-maxlength">
<span translate translate-values="{length:11}">global.messages.error.max</span>
</div>
<div ng-message="minlength">
<span translate translate-values="{length:11}">global.messages.error.min</span>
</div>
<div ng-message-exp="['required', 'pattern']">
<span translate>global.messages.error.phoneNumber</span>
</div>
</div>
</md-input-container>
</div>
它显示了 14 个字符,但我没有填写任何内容。
我只想显示字符串。但是当用户点击时,它应该将 54343 写入该字段。
它应该只放 11 个字符。不是 14 岁。
所以使用文本输入 2 次更好?
我的面具通常有
(999)-9999999
11 个字符,但它也很重要
( ) 和 - 所以它变成 14。但它们不是字符
控制器的一小部分
(function (angular) {
'use strict';
angular
.module('signup')
.controller('SignUpController', SignUpController);
SignUpController.$inject = [
'$state',
'$timeout',
];
/* @ngInject */
function SignUpController($state, $timeout, Account, AuthServer, Alert, Principal, StringUtil ) {
var vm = this;
vm.model = {};
vm.companyMask = "0(999)-999-999";
function signUp() {
Account.register(vm.model).success(
function (emptyData, status, headers) {
AuthServer.checkAuthenticationToken(headers, true);
Principal.identity(true).then(
function (account) {
var companyShortInfo = {
companyPhoneNumber: vm.model.companyPhoneNumber,
}
};
}
);
}
)
}
ui-mask 添加到模块中的模块如
(function (angular) {
'use strict';
angular
.module(
'app.tracking',
'angular-google-analytics',
'ui.mask'
【问题讨论】:
-
ui-mask 是否与 Material Design md-input-container 兼容?
-
我认为没有。它显示 14 个字符,即使我没有填写。什么可以用作替代品?
-
能否请您提供您的 ui-mask 配置和一小部分控制器
-
@alphapilgrim 我添加了一些 sn-ps。够了吗
标签: javascript html angularjs angular-material