我使用Angular-JS的livesearch插件尝试创建一个AJAX动态搜索框。在教程之后,我相信我已经按照应有的方式设置了所有内容,但是当页面运行时,它不会从<live-search>
元素转换为<input>
元素。我无法弄清楚原因。
在我的代码中,我有这样的脚本:
<script src="/Scripts/angular/angular.js"></script>
<script src="/Scripts/Custom/liveSearch.js"></script>
<script src="/Scripts/Custom/application.js"></script>
<script src="/Scripts/Controllers/salesEventEdit.ctrl.js"></script>
以下是相关代码的jsFiddle。如果你需要更多,我可以更新它,但为了使它完全正常运行将需要大量的代码才能复制,这要归功于angular。我在小提琴中包含的代码是salesEventEdit.ctrl.js
文件的一部分。
从我读过的所有内容来看,<live-search>
到<input>
的转换应该通过角度来处理,我不应该做任何事情。
如果我的小提琴消失,为了帮助将来的人,这里是相关的HTML:
<span class="liveSearchWrap">
<live-search type="text"
class="liveSearch"
name="entitySearch"
live-search-callback="entityCallback"
live-search-item-template="{{result.Name}}"
live-search-select="Name"
live-search-max-result-size="50"
live-search-wait-timeout="500"
live-search-selected-id="Id"
user-id="entity.Id"></live-search>
<a class="btnSearch"><i class="fa fa-search"></i></a>
</span>
答案 0 :(得分:1)
虽然 LiveSearch 模块确实会自动处理<live-search>
元素,但需要将其注入应用程序。如GitHub页面的README here所示,将其注入:
var app = angular.module("MyApp", ["LiveSearch"]);
// -------------------------HERE --^