Javascript 如果在指令模板中,则为ng
我的指令中有此模板Javascript 如果在指令模板中,则为ng,javascript,angularjs,directive,Javascript,Angularjs,Directive,我的指令中有此模板 ... template: "<div class='dd caretImg'>" + "<div class='display-field '>{{selectedValue[displayField]}}</div>" + "<ul>" + "<li ng-repeat='item in data' ng-click='selectItem(item
...
template:
"<div class='dd caretImg'>" +
"<div class='display-field '>{{selectedValue[displayField]}}</div>" +
"<ul>" +
"<li ng-repeat='item in data' ng-click='selectItem(item)'>" +
"<span class='checkOn' ng-if='item.value == model'></span>" +
"<span class='check' ng-if='item.value != model'></span>" +
"{{item[displayField]}}" +
"</li>" +
"</ul>" +
"</div>",
....
它不起作用。(它是这样工作的:
"{{item[displayField]}}" +
(位于“”+”上方的行),但不在ng if内
[displayField]是指令中的一个变量。它输入到html属性中
<hover-dropdown
placeholder = "select..."
data = "comparisons"
model = "filter.comparison"
display-field = "label"
value-field = "value"
style = "width: 65px;"
on-select = "changeFilterField(filter)"
></hover-dropdown>
有人知道怎么做吗
这是一个jsbin:我的错误。我输入了错误的字段。ng if=item[somevariable]按预期工作。感谢您查看它。您可以通过将
{{model}}
添加到“{item[displayField]}”中进行调试吗
line,看看这两个值是否匹配?你能提供一个提琴吗?我在示例中添加了一个jbin。参见上面的演示应该显示什么?它没有与问题相同的代码。如果css名称有点不同,但功能完全相同,这将有助于将其缩小到特定问题ng在jbin上,查看指令模板中带有ng if的2个span标记。将ng if='item.value…',更改为ng if='item[displayfield]…',您将看到它不起作用。我正在尝试找出item[displayfield]如何在ng if内工作。
<hover-dropdown
placeholder = "select..."
data = "comparisons"
model = "filter.comparison"
display-field = "label"
value-field = "value"
style = "width: 65px;"
on-select = "changeFilterField(filter)"
></hover-dropdown>
ng-if='item[displayField] == model'
ng-if='item[{{displayField}}] == model'
ng-if='item{{[displayField]}} == model'
ng-if='{{item[displayField]}}== model'