Javascript 剑道自动完成与服务器过滤在角度,如何?

Javascript 剑道自动完成与服务器过滤在角度,如何?,javascript,jquery,angularjs,autocomplete,Javascript,Jquery,Angularjs,Autocomplete,我遵循了这个示例,它描述了在AngularJS中使用剑道自动完成的基本操作 问题是该示例仅适用于本地定义的数据 有人能举个例子说明如何使用远程JSON数据源吗 链接是: 谢谢你的建议。只需使用$http,如下所示: angular.module("KendoDemos", [ "kendo.directives" ]); function MyCtrl($scope, $http){ $http.get('/remoteDataSource'). success(function(d

我遵循了这个示例,它描述了在AngularJS中使用剑道自动完成的基本操作

问题是该示例仅适用于本地定义的数据

有人能举个例子说明如何使用远程JSON数据源吗

链接是:


谢谢你的建议。

只需使用$http,如下所示:

angular.module("KendoDemos", [ "kendo.directives" ]);
function MyCtrl($scope, $http){

$http.get('/remoteDataSource').
    success(function(data) {
        $scope.countryNames = data;
    });
}
如果数据在键入时发生变化,您还可以使用$watch:

angular.module("KendoDemos", [ "kendo.directives" ]);
function MyCtrl($scope, $http){

$scope.$watch('textboxValue', function(){
    $http.get('/remoteDataSource/' + $scope.textboxValue).
        success(function(data) {
            $scope.countryNames = data;
        });
    }
});
在html中只需使用

<input kendo-auto-complete  
        k-data-text-field="'ProductName'"
        k-data-value-field="'ProductID'"
        k-data-source="productsDataSource" />

但是$scope.countryNames应该在用户输入的每个字符之后刷新。我不明白为什么上面的代码不是这样。因为在远程搜索中应用了过滤器,通过输入的给定字符串值进行搜索。
angular.module("KendoDemos", [ "kendo.directives" ])
  .controller("MyCtrl", function($scope){
      $scope.productsDataSource = {
        type: "JSON",
        serverFiltering: true,
        transport: {
            read: {
                url: "http://demos.telerik.com/kendo-ui/service/Northwind.svc/Products",
            }
        }
    };


  })