我目前正在使用jQuery来显示模态窗口,该函数基本上构建了一些HTML然后$('#myElement').append(modalHtml);
在该模态HTML中我有<div ng-controller="MyController">...</div>
但是当显示模态时,控制器似乎没有被初始化。这是因为它被添加到角度范围之外的DOM中吗?如果是这样,当我运行该代码时,我可以通知angular注意更改?
目前它的细分方式是Angular在元素上通过loadModal()
运行ng-click
。 loadModal()
调用modal()
,modal()
构建html并将其添加到DOM。 Modal是一个只有独立帮助函数的脚本。
答案 0 :(得分:1)
模态控制器不会被调用,因为您没有使用Angular解析或编译附加的DOM代码。因此,Angular不会注意到&#39;此更改因此不会在添加的DOM中运行任何控制器或指令。解决此类问题的最佳方法是添加自定义指令。
当您尝试进行模态工作时,您还可以查看Angular的现有模态调整,例如AngularUI中的模态调整。