我正在使用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>
虽然LiveSearch模块会自动处理<live-search>
元素,但它需要被注入到应用程序中。如GitHub页面的README所示,像这样注入它:
var app = angular.module("MyApp", ["LiveSearch"]);
// -------------------------HERE --^