Angular js使用链接自动完成搜索

时间:2015-08-04 07:51:59

标签: javascript angularjs

我正在尝试使用链接实现自动完成搜索(选择后应跳转到特定页面)。只有我需要隐藏搜索框下方出现的数据,它才会显示用户启动类型,如搜索功能。

下面有两个屏幕截图,第一个是我已经完成的数据默认填充,所以我希望这是隐藏的,当我键入它应该显示像screen2 enter image description here

data is getting populated from database using json but i need to hide the content apearing after input box, it shoul only come when i type the relevant text

<!DOCTYPE html>
<html>
<head>
<title>Angular JS</title>

<style>
ul,li{margin:0; padding:0;}
</style>
</head>
<body>    
<div ng-app="myApp" ng-controller="movieCtrl"> 
<input type="text" ng-model="film">
<ul>
  <li ng-repeat="x in movies | filter:film | orderBy:'film'" style="list-style-type:none;"><a href="{{ x.param }}">{{ x.film  | uppercase }}</a></li>
</ul>

</div>    

<script src="Scripts/angular.min.js"></script>
<script>
var app = angular.module('myApp', []);
app.controller('movieCtrl', function($scope, $http) {
    $http.get("tmp.php")
    .success(function(response) {$scope.movies = response.movie;});
});
</script>
</body>
</html>

2 个答案:

答案 0 :(得分:1)

在列表中添加一个条件,只有在过滤器不为空时才可见:

<ul ng-show="film">
  <li ng-repeat="x in movies | filter:film | orderBy:'film'" style="list-style-type:none;"><a href="{{ x.param }}">{{ x.film  | uppercase }}</a></li>
</ul>

答案 1 :(得分:0)

添加变量(最初为false)并根据该变量隐藏列表。然后,当您更改输入时,将变量更改为true。 这是你能做的:

<button>

<input type="text" ng-model="film" ng-init="show=0" ng-change="show=1">