Angularjs 角度选择不过滤我的重复
我正在使用“选择”字段筛选我的内容,如下所示:Angularjs 角度选择不过滤我的重复,angularjs,Angularjs,我正在使用“选择”字段筛选我的内容,如下所示: <div class="form-horizontal"> <div class="form-group"> <label class="col-sm-2 ticket-status">Ticket Status:</label> <div class="col-
<div class="form-horizontal">
<div class="form-group">
<label class="col-sm-2 ticket-status">Ticket Status:</label>
<div class="col-sm-4" ng-controller="LookupController as lookupCtrl" ng-init="getTicketStatusList()">
<select ng-options="t.Name for t in ticketstatus track by t.Id" ng-model="statusFilter" class="form-control"></select>
</div>
</div>
</div>
<div class="list-ticket" ng-repeat="ticket in myticket | filter : {Status: statusFilter}: true">
<a href="/ticket/info/{{ticket.Id}}">
<ul class="list-inline ticket-list">
<li>
<i class="fa fa-ticket fa-4x" aria-hidden="true"></i>
</li>
<li>
<p class="ticket-title">#{{ticket.TicketNo}}: {{ticket.Title}}</p>
<p>{{ticket.Category}}</p>
<p>{{ticket.Priority}}</p>
</li>
</ul>
</a>
</div>
票证状态:
问题是,当我更改“选择”字段上的选择时,列表不会更新。有人能告诉我我做错了什么吗?如果选择字段不是使用angular生成的,则此过滤器工作正常。提前感谢。问题在于您的
过滤器和ngRepeat
不在同一个控制器中;因此,$scope
是不同的(正如上面@user2718281的评论)。尝试为两个控制器使用相同的控制器
(将其放在其父控制器上)。所以,它会是这样的:
<div class="parent-container" ng-controller="LookupController as lookupCtrl">
<div class="form-horizontal">
<div class="form-group">
<!--Filter term here-->
</div>
</div>
<div class="list-ticket" ng-repeat="ticket in myticket | filter : {Status: statusFilter}: true">
<!--ngRepeat here-->
</div>
</div>
希望这能对您有所帮助。请尝试使用
<select ng-options="t.Status as t.Name for t in ticketstatus track by t.Id" ng-model="statusFilter" class="form-control"></select>
select
过滤器位于LookupController
中,因此它有自己的作用域,因此过滤器不会工作欢迎堆栈溢出!虽然此代码可能有助于解决问题,但它没有解释为什么和/或如何回答问题。提供这种额外的环境将大大提高其长期价值。请在你的答案中添加解释,包括适用的限制和假设。它是有效的,达伦!多亏了你,我现在对控制器的能力有了更多的了解。