AngularJS从视图中的导航栏搜索

时间:2015-10-14 20:34:56

标签: angularjs twitter-bootstrap angularjs-ng-repeat

我的页面上有一个导航栏,上面有一个我要搜索视图的输入,应该在用户输入搜索项后加载到index.html中。如果它与ng-repeat项目所在的页面相同,我只能弄清楚如何使用输入进行搜索。有没有办法在视图外搜索表格?我创造了一个plnkr。它不起作用。我不知道如何让它发挥作用。 ASP.NET MVC integration

以下是我的一些代码:

导航栏

builder.RegisterType<ProductContext>().As<DbContext>().InstancePerRequest();

这是我的数据显示表。

<input type="text" class="form-control" placeholder="Search" ng-model="vm.query">

有可能做我想做的事吗?

1 个答案:

答案 0 :(得分:0)

我看过你的傻瓜,我不相信你的代码没有初始化角度。我无法在您的代码中的任何位置看到ng-app标记。

那一方,你可以使用任何输入来过滤/搜索(通过各种实现),只要输入和表包含在你的ng-app和DOM的控制器部分中。否则您将无法访问控制器。

我可以建议您提出问题吗?提供最少量的代码来证明您的问题。

这是一个粗略的轮廓:

<body ng-app="app" ng-controller="cntrl">
   <!-- nav bar -->
   <div>
      <input ng-model="filterVal"/>
   </div>
   <!-- table -->
   <div>
      <table>
        <tr ng-repeat="r in data.rows | filter:filterVal">....</tr>
      </table>
   </div>
</body>

以下是默认过滤器功能正常工作的plunker:http://plnkr.co/edit/GDJs5xTCpqq48SDFTk67

如果您需要将导航栏放在应用程序/控制器之外或其他控制器(等)之外,那么可以使用此解决方案。

假设您使用的是ui-route,这就是如何使用服务在控制器之间进行通信:

功能示例: http://plnkr.co/edit/fZZLUvlHO9zUFwQYd1an?p=preview

Eggheads视频: https://egghead.io/lessons/angularjs-sharing-data-between-controllers

相关问题