Javascript 单击列表中按角度过滤的函数

Javascript 单击列表中按角度过滤的函数,javascript,jquery,angularjs,ng-repeat,ng-init,Javascript,Jquery,Angularjs,Ng Repeat,Ng Init,我有一个列表,我正在使用Angular根据搜索进行筛选: 单击列表中的一个项目后,我不能100%确定您想要什么,但我创建了一个简单的示例,说明了如何使用更简单的角度代码,将表示保持在HTML中,并将逻辑(在本例中不太多)保持在控制器中 HTML <div ng-controller="MainCtrl"> <label>Begin entering a psyker's name here: <input id="psykerSearch" ng-mo

我有一个列表,我正在使用Angular根据搜索进行筛选:


单击列表中的一个项目后,我不能100%确定您想要什么,但我创建了一个简单的示例,说明了如何使用更简单的角度代码,将表示保持在HTML中,并将逻辑(在本例中不太多)保持在控制器中

HTML

<div ng-controller="MainCtrl">
  <label>Begin entering a psyker's name here:
    <input id="psykerSearch" ng-model="searchText" ng-disabled="chosenPsyker">
  </label>
  <p class="psykerResult" ng-repeat="psyker in psykers | filter:searchText">
    <a href="#" ng-bind="psyker.name" ng-click="psykerClicked(psyker)"></a>
  </p>
  <hr>
  <h2 ng-bind="chosenPsyker.name"></h2>
  <p>Warp Charge: <span ng-bind="chosenPsyker.warpCharge"></span></p>
  <p>Mastery Level:  <span ng-bind="chosenPsyker.mastery"></span></p>
  <p class="notes">
    <label for="notes">Notes: </label>
    <textarea id="notes" rows="4" cols="50"></textarea>
  </p>
</div>

我不能100%确定在单击列表中的一个项目后您想要什么,但我创建了一个简单的示例,说明了如何使用更简单的角度代码,将显示保持在HTML中,并将逻辑(在本例中不太多)保持在控制器中

HTML

<div ng-controller="MainCtrl">
  <label>Begin entering a psyker's name here:
    <input id="psykerSearch" ng-model="searchText" ng-disabled="chosenPsyker">
  </label>
  <p class="psykerResult" ng-repeat="psyker in psykers | filter:searchText">
    <a href="#" ng-bind="psyker.name" ng-click="psykerClicked(psyker)"></a>
  </p>
  <hr>
  <h2 ng-bind="chosenPsyker.name"></h2>
  <p>Warp Charge: <span ng-bind="chosenPsyker.warpCharge"></span></p>
  <p>Mastery Level:  <span ng-bind="chosenPsyker.mastery"></span></p>
  <p class="notes">
    <label for="notes">Notes: </label>
    <textarea id="notes" rows="4" cols="50"></textarea>
  </p>
</div>


摆脱所有jQuery。。。将jQuery完全置于页面右侧,并使用事件指令,如
ng click
ng keyup
以及
ngAnimate
来执行您正在执行的操作。强烈建议您阅读@charlietfl是完全正确的,
ng init
在正确的路径上更为正确,但在实例化在控制器内完成的数组时可能也应该避免。@charlietfl在这一点上,我的整个页面主要基于jquery,那么也许你应该问问自己,为什么你要用角形的。如果它仅仅是一个模板引擎,那么它是一个具有大量冲突潜力的巨大的过度杀伤力,还有其他更轻的模板引擎,它们不是完整的框架,也不以那种方式操纵domdoes@charlietfl我只是用它来过滤搜索。你会知道更好的选择吗?摆脱所有的jQuery。。。将jQuery完全置于页面右侧,并使用事件指令,如
ng click
ng keyup
以及
ngAnimate
来执行您正在执行的操作。强烈建议您阅读@charlietfl是完全正确的,
ng init
在正确的路径上更为正确,但在实例化在控制器内完成的数组时可能也应该避免。@charlietfl在这一点上,我的整个页面主要基于jquery,那么也许你应该问问自己,为什么你要用角形的。如果它仅仅是一个模板引擎,那么它是一个具有大量冲突潜力的巨大的过度杀伤力,还有其他更轻的模板引擎,它们不是完整的框架,也不以那种方式操纵domdoes@charlietfl我只是用它来过滤搜索。你会知道一个更好的选择吗?我最终使用了list.js并放弃了angular,但你的解决方案似乎对任何想使用angular的人都有帮助,所以我选择它作为最佳答案。谢谢你的时间和努力。虽然我不会使用这个,但很高兴看到它在Angular中是如何实现的。谢谢,谢谢。我开始使用jQuery,然后改用Angular;我发现一旦我习惯了新的做事方式,开发时间就会大大缩短。我是个新手。我的第一个想法是,由于有大量可用的插件,jQuery可能更灵活。你会不会错过这个机会?也许我错了,jQuery可能有更多的插件(很有可能,但不确定是哪种方式),但Angular有很多可用的模块。我想不出Angular中有什么是我所希望的,但有人还没有这样做并分享他们的代码。我最终使用了list.js并放弃了Angular,但您的解决方案似乎对任何想使用Angular的人都有帮助,所以我选择它作为最佳答案。谢谢你的时间和努力。虽然我不会使用这个,但很高兴看到它在Angular中是如何实现的。谢谢,谢谢。我开始使用jQuery,然后改用Angular;我发现一旦我习惯了新的做事方式,开发时间就会大大缩短。我是个新手。我的第一个想法是,由于有大量可用的插件,jQuery可能更灵活。你会不会错过这个机会?也许我错了,jQuery可能有更多的插件(很有可能,但不确定是哪种方式),但Angular有很多可用的模块。在Angular中,我想不出我希望得到的任何东西,而有人还没有这样做并共享他们的代码。