【发布时间】:2016-04-19 17:40:59
【问题描述】:
我使用 angular 自定义指令做了一个 自动填充下拉菜单。一切正常。 但我想让这个指令可重用!!!!
目前我的指令严格依赖于所选项目的 Id 和 Name 属性。
我想分配 text 属性(我想将文本绑定到列表项 html 中)和 value 属性(将在我的应用程序控制器中可用),例如 textfield="Name" 和 value-field=" ID”。
想象一下,如果我的数据对象不包含 Name 或 Id 属性,我的 指令不起作用。
HTML:
<autofill-dropdown items="searchCurrencies"
textfield="Name" valuefield="Id" selected-data="Id" urllink="/api/SetupCurrency/Autofill?filter=">
</autofill-dropdown>
模板:
<div class="pos_Rel">
<input placeholder="Search Currency e.g. doller,pound,rupee"
type="text" ng-change="SearchTextChange()" ng-model="searchtext"
class="form-control width_full" />
<ul class="currencySearchList" ng-show="IsFocused && items.length">
<li class="autofill" ng-repeat="item in items" ng-click="autoFill(item)">
{{item.Name}}
</li>
</ul>
</div>
所以,最后我要完成什么,我要绑定 Name 属性(或其他,取决于我为“文本字段”属性设置的值 到我的 html 上)到列表项,每当用户选择一个项目时,它都会给我选择的 Id(或 其他属性,取决于我为“value-field”属性设置的值 到我的 html 上)。
更新:
我认为我的问题不太清楚。 我已经写了 2 次相同的指令来完成,也写了 2 次相同的模板 :( 请查看我更新的 plunkr。
【问题讨论】:
标签: javascript angularjs angularjs-directive angularjs-scope