Angular.js:如何将“更改”事件绑定到服务

时间:2014-02-25 14:04:18

标签: javascript jquery json angularjs asp.net-mvc-5

首先,我是angular.js的新手......

我有一个HTML5页面,我可以在其中添加带有名称的新网址。现在,我想检查后端服务以检查URL是否已存在。如何将输入框上的“onChange”事件绑定到服务功能? 我试图找到解决方案,但我无法找到任何容易描述的内容。

<div ng-controller="newLink">
<input class="url" value="{{Url}}" ng-model="Url" placeholder="Please type a URL"/>
<input class="name" value="{{Name}}" ng-model="Name" placeholder="Type a name" />
<div class="status"></div>
</div>
<script>
        app.controller('newLink', ['$scope', 'appService', function ($scope, appService) {
        $scope.Name = '';
        $scope.Url = '';
    }]);
</script>

2 个答案:

答案 0 :(得分:4)

您可以使用ngChange指令

<input ng-change="onChange()">

// in controller

$scope.onChange = function(){
  // call your service function here
}

有关详细信息,请参阅:http://docs.angularjs.org/api/ng/directive/ngChange

答案 1 :(得分:2)

解决此问题的两个简单方法:

  1. 使用ng-change指令:

    <input ng-change="doSomething()">
    
    $scope.doSomething = function() {};
    
  2. $watch值更改

    <input ng-model="Url">
    
    $scope.$watch('Url', function() {});