Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/462.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript 用文字做一个过滤器而不隐藏它们_Javascript_Angularjs - Fatal编程技术网

Javascript 用文字做一个过滤器而不隐藏它们

Javascript 用文字做一个过滤器而不隐藏它们,javascript,angularjs,Javascript,Angularjs,我目前有一段代码,允许我根据名称和标题过滤JSON对象。我有一个包含几个单词的数组,我想做相同的过滤器,但不隐藏单词,只需根据我的数组标记它们 $scope.arrayFilter=["bad,bill,mikle,awesome,mosa"]; 在启动应用程序时,是否可以默认执行此筛选?。多谢各位 $scope.data=[{ 标题:“坏”, 姓名:“比尔” }, { 标题:“好”, 姓名:“Goe” }, { 标题:“伟大”, 名字:“布拉德” }, { 标题:“酷”, 姓名:‘燕’ }

我目前有一段代码,允许我根据名称和标题过滤JSON对象。我有一个包含几个单词的数组,我想做相同的过滤器,但不隐藏单词,只需根据我的数组标记它们

$scope.arrayFilter=["bad,bill,mikle,awesome,mosa"];
在启动应用程序时,是否可以默认执行此筛选?。多谢各位

$scope.data=[{
标题:“坏”,
姓名:“比尔”
}, {
标题:“好”,
姓名:“Goe”
}, {
标题:“伟大”,
名字:“布拉德”
}, {
标题:“酷”,
姓名:‘燕’
}, {
标题:“优秀”,
名字:“米克尔”
}, {
标题:“真棒”,
名称:“摩萨”
}, {
标题:“恐怖”,
姓名:“莫特萨”
} ]
}).filter('highlight',函数($sce){
返回函数(文本、短语){
如果(短语)text=text.replace(新的RegExp(“(“+短语+”)”,“gi”),
'$1')
返回$sce.trustAsHtml(文本)
}
})
当前,如果我在文本字段中键入一个单词,它将根据JSON对象的名称和标题进行过滤。被标记但消失了。我只想让它们被标记,而不是消失


非常感谢

问题是因为您还过滤了
  • ,只需删除过滤器即可 并且还连接
    项。名称
    比如这个例子

    <div class="container" >
        <input type="text" placeholder="Search" ng-model="search">
        <ul>
            <li ng-repeat="item in data ">
               <span ng-bind-html="item.title +' '+ item.name | highlight:search"></span>
            </li>
         </ul>
     </div>
    
    
    
    它将只在
    绑定html

    这是一个正在工作的plnkr,其中搜索元素
    问题是因为您还过滤了
  • 只需删除过滤器 并且还连接
    项。名称
    比如这个例子

    <div class="container" >
        <input type="text" placeholder="Search" ng-model="search">
        <ul>
            <li ng-repeat="item in data ">
               <span ng-bind-html="item.title +' '+ item.name | highlight:search"></span>
            </li>
         </ul>
     </div>
    
    
    
    它将只在
    绑定html

    这是一个正在工作的plnkr,其中搜索元素

    只需从您的
    ng repeat
    中移除过滤器,并保持其他代码不变

     <li ng-repeat="item in data">
    

  • 只需从您的
    ng repeat
    中移除过滤器,并保持其他代码不变

     <li ng-repeat="item in data">
    

  • 太棒了!但正如我在问题中所说的,我需要使用数组中的值而不是文本字段来进行筛选。$scope.arrayFilter=[“bad,bill,mikle,awesome,mosa”];我相信,如果你帮助我,我会明白更多。太好了!但正如我在问题中所说的,我需要使用数组中的值而不是文本字段来进行筛选。$scope.arrayFilter=[“bad,bill,mikle,awesome,mosa”];我相信如果你能帮助我,我会理解更多的角度。使用
    ng选项
    ng初始化
    。看看这个。使用
    ng选项
    ng初始化
    。看看这个。