我想实现限制/限制用户仅限10个数字的行为:
任何人都知道如何做到这一点?
我确实看到他们有一个属性md-input-maxlength,但我无法让它工作,或找到一个例子。
感谢您的投入。
答案 0 :(得分:1)
我认为目前没有一种简单的方法可以做到这一点。但是,作为一个hacky变通方法,您可以使用md-search-text-change
,只要值大于X,您就可以使用值的前X个字符覆盖它。
示例笔here
请注意,将文本更改为其子字符串将导致另一次调用文本更改事件。
答案 1 :(得分:1)
结合'md-maxlength'和'maxlength' 例如。 input type =“text”md-maxlength =“512”maxlength =“512”
答案 2 :(得分:1)
这是工作代码:
<md-autocomplete flex=""
required
ng-init="searchText=''"
md-input-name="autocompleteAddField"
md-input-minlength="2"
md-input-maxlength="10"
md-no-cache="true"
md-selected-item="newE.add"
md-search-text="searchText"
md-items="item in vm.queryAddressSearch(searchText)"
md-item-text="item.address"
md-require-match=""
md-floating-label="Address">
<md-item-template>
<span md-highlight-text="searchText">{{item.address}}</span>
</md-item-template>
<div ng-messages="newEntityForm.autocompleteAddField.$error" ng-if="newEntityForm.autocompleteAddField.$touched">
<div ng-message="required">You <b>must</b> have a user address.</div>
<div ng-message="md-require-match">Please select an existing address.</div>
<div ng-message="minlength">Your entry is not long enough.</div>
<div ng-message="maxlength">Your entry is too long.</div>
</div>
</md-autocomplete>
答案 3 :(得分:0)
您可以使用 ng-maxlength =“10”。这是一个例子。如果用户输入的字符超过10个,则表单无效。你可以看一下。
<form name="form">
<input type="text" ng-model="model" id="input" name="input" ng-maxlength="10" />
<hr>
input valid? = <code>{{form.input.$valid}}</code><br>
model = <code>{{model}}</code>
</form>
答案 4 :(得分:0)
从约翰史密斯的回答中延伸出来,你可以试试
md-search-text-change="searchText = searchText.substring(0,10)"