我在diretive中尝试了一个没有使用模板选项的指示,其中我有一个字段,这是一个html字符串,我正在尝试使用$ compile指令编译,但它不起作用。不知道我在哪里出错了。
这是我的小提琴:http://jsfiddle.net/egyxjo42/1/
指令名称:my-dropdown-b
答案 0 :(得分:1)
这是因为当你在没有模板的情况下工作时,定义元素中的ng-model不会被转换为新元素,所以你必须添加你自己的ng-model
link: function (scope, element, attrs, ctrl) {
var ele = "<select ng-options='i.id as i.name for i in foodB' ng-model='"+attrs.ngModel+"'></select>";
element.html(ele);
$compile(element.contents())(scope);
}