我想在一个元素中添加自定义指令名称,就像我们在jquery中使用attr()
方法添加属性名称及其值一样。
例如supoose我有一个名为 example-directive 的自定义指令,我想在编程上调用这个指令,就像下面的js小提琴示例我要添加 example-directive ID ID sam 。
有谁能告诉我如何实现这个目标?
答案 0 :(得分:1)
答案 1 :(得分:0)
$compile是关键。假设你真的想用你的指令替换那个div。你需要找到那个元素,然后编译你的指令html并用它替换它。没有编译它将无法工作,你只是看到HTML。
function MyCtrl($scope, $element, $compile) {
var element = $element.find("#sam");
var compiled = $compile('<div example-directive1>{{message}}</div>')($scope);
element.replaceWith(compiled);
}
这是jsfiddle。
答案 2 :(得分:0)
使用JQuery设置元素的属性
$('#id').attr('directive-name', '1');
编译属性
$compile($('#id'))($scope);
这里是jsFiddle