我在header.html
页的页眉中有一个全局搜索框
header.html
<div class="col-md-4" style="float:right; margin-right:0px;">
<div class="input-group">
<input type="text" class="form-control" placeholder="Search" id="txtSearch" />
<div class="input-group-btn">
<button class="btn btn-primary" type="submit">
<span class="glyphicon glyphicon-search"></span>
</button>
</div>
</div>
</div>
我有headerController.js
function headerController($scope, $http, $rootScope) {
var vm = this;
}
Index1.html
这是索引1页面。索引1真漂亮
Index2.html
这是索引2页面。索引2很棒
索引3.html
这是索引3页面。索引3真可爱
我正在使用angularjs进行开发,因此当我搜索beautiful
关键字时,应该向我显示一个弹出窗口(不警告),该美丽单词在索引1页面中。如果我搜索单词wonderful
,它应该在弹出窗口(不是警告)中告诉我索引2页面中有精彩内容。我尝试了其他静态搜索类型,这些类型指向要过滤和搜索的元素的ng-repeat列表。但是我怎么能做到这一点
我尝试查看此示例,但出现错误
http://plnkr.co/edit/FMRTTbxdNv0pGSYpfwve?p=preview
错误是
Error: [$injector:unpr] http://errors.angularjs.org/1.7.2/$injector/unpr?p0=%24routeParamsProvider%20%3C-%20%24routeParams%20%3C-%20searchResultsController
at angular.js:99
at angular.js:4891
at Object.d [as get] (angular.js:5051)
at angular.js:4896
at d (angular.js:5051)
at e (angular.js:5076)
at Object.instantiate (angular.js:5120)
at angular.js:11175
at Object.<anonymous> (angular-ui-router.min.js:7)
at angular.js:1364 "<div class="well ng-scope" ui-view="">"
答案 0 :(得分:0)
在SearchResultsController中这样的事情(未经测试):
$scope.results = [];
$http.get(url1).then(function(result){if(result.data.contains($scope.query)) $scope.results.push("url1")});
$http.get(url2).then(function(result){if(result.data.contains($scope.query)) $scope.results.push("url2")});
$http.get(url3).then(function(result){if(result.data.contains($scope.query)) $scope.results.push("url3")});
然后在您的html页面中
<div ng-repeat="result in results">Found in: {{result}}</div>