我有一个带有两个要触发的函数的先行字段。一个应该是模糊的,这是该领域的验证。另一个应该是用户类型,这是uib-typeahead
使用的函数。
现在我正在使用ng-model-options="{ updateOn: 'blur' }"
但是它不会在用户输入时触发预先输入。
有没有办法让验证功能触发onBlur和正常的预先触发?
例如,我调用了一个指令编号验证,我想调用模糊。然后在typeahead中我想在用户输入时调用triggerfunction。
<input
number-validation
type="text"
maxlength="10"
class="form-control input-sm"
ng-model="number"
ng-change="number.elsewhere = null"
required
uib-typeahead="number for number in triggerfunction($viewValue)"
typeahead-template-url="/template.html"
typeahead-loading="Loadinglocations" typeahead-on-select="SelectFunction($item, 1)" typeahead-wait-ms="3"
typeahead-min-length="3">
答案 0 :(得分:1)
对于&#34;模糊&#34;,您可以使用&#34; ng-blur&#34;。对于预先输入功能,请使用&#34; ng-keyup&#34;。
这是一个小例子......
https://jsfiddle.net/eh2morxb/
而且,这是代码......
<input type="text" ng-model="inputText" ng-blur="blurHandler()" ng-keyup="typeAhead()" placeholder="Type something...">
angular.module("myApp", []).controller("myController", ["$scope", function($scope) {
$scope.inputText = "";
$scope.typeAheadMessage = "";
$scope.blurMessage = "";
$scope.blurHandler = function() {
$scope.blurMessage = "Perform input validation on " + $scope.inputText;
};
$scope.typeAhead = function() {
$scope.typeAheadMessage = "Perform type-ahead lookup on " + $scope.inputText;
};
}])
答案 1 :(得分:0)
您可以利用ng-blur
指令触发模糊https://docs.angularjs.org/api/ng/directive/ngBlur