在angular中搜索的麻烦
trouble with search in angular
我是angular的新手,在实现"实时搜索"类型的功能时遇到了一些困难。我将JSON设置为javascript文件中的一个变量,并且我能够毫无问题地在html中显示它。然后我有一个"列表"单选框,它可以更改显示的大小。这也是功能性的。然而,我在访问反向过滤器选项时遇到了麻烦,该选项用另一个单选按钮表示。预期的结果是按照书名的名字反向过滤书名,你什么都没发生。如果您想查看结构,这是我的JSON。下面是我尝试执行过滤器反向操作的代码:
<div class="container result">
<div ng-class="list ? 'col-md-6' : 'col-md-4'" class="books" ng-repeat="books in books | filter:search | orderBy:'books.doc.name':reverse"> <a href="https://address/{{books.doc.name}}" target="_blank">
<img ng-class="list ? 'col-md-2' : 'col-md-12'" ng-src="{{books.doc.thumbnail_590_url}}" alt="Click to read {{books.doc.name}}" title="Click to read {{books.doc.name}}" class="img-thumbnail" /></a>
<h4 ng-class="list ? 'col-md-10' : 'col-md-12'">{{books.doc.name}}</h4>
</div>
js:
angular.module("myApp",["ngSanitize"])
.filter('replace', function () {
var pat = / /gi;
return function (text) {
var clean = text.replace(pat, "-");
var temp = clean.split("---");
if (temp.length>1) {
clean = temp[0];
}
return clean;
};
})
.controller("Example", function($scope, $interval) {
$scope.search = "orig";
$scope.books = books;
$scope.reverse = false;
$scope.list = false;
});
我想明白了。角度过滤器不会对json对象起作用,相反,数据必须是json数组的形式。除了删除我发布的json文件中可以看到的数字和冒号(如"1272:")之外,我删除了最高级别的封闭花括号,并用方括号取而代之。采取这些步骤将我的数据转换为json数组,并允许我使用实时搜索功能。
相关文章:
- 用程序搜索JQuery数据表中的文本
- 在html Select中添加搜索
- Ajax Live搜索发布到Laravel视图
- 谷歌放置API:按国家或餐馆名称搜索餐馆
- 学生搜索项目jquery/javascript
- 用于搜索的聚合物嵌套绑定
- 在javascript中搜索具有重复值的两个数组中的匹配值
- Angularjs-utils高亮过滤器在搜索时破坏应用程序
- 使用javascript搜索具有用户输入的数组
- 淘汰搜索/筛选
- 搜索api在mac上显示对话框
- AngularJS/HTML/Bootstrap元素用于动态搜索结果
- 谷歌水印未显示在自定义搜索框中
- 在javascript中搜索项目列表的性能
- 正在搜索JavaScript日期选择器滑块
- JQuery中的活动搜索栏
- 如何在剑道下拉列表中按文本和值搜索
- 在angular中搜索的麻烦
- 我在使用Javascript's indexOf()函数搜索对象并在表上显示结果时遇到了麻烦
- 麻烦的ajax延迟搜索形式