我有一个与模式相关的问题。我建立了一个指令" load"内容到引导弹出窗口。
HTML:
<span data-ng-show="user.provider === 'local'" class="label label-warning" data-popover="" data-placement="bottom" data-content-selector="#passwordchangeform">change password</span>
<div id="passwordchangeform" style="display:none;">
<h3>Change password</h3>
<h4>(Not finished yet!)</h4>
<form>
Old password:
<input type="text" ng-model="username" name="text"/><br/>
New password:
<input type="text" ng-model="password1" name="text"/><br/>
New password again:
<input type="text" ng-model="password2" name="text"/><br/>
<input type="button" data-ng-click="login()" value="login"/>
</form>
</div>
指令:
angular.module('app').directive('popover', function ($compile) {
return {
restrict: 'A',
link: function (scope, el, attrs) {
var content;
if (attrs.content) {
content = attrs.content;
} else {
content = $compile("<div>" + $(attrs.contentSelector).html() + "</div>")(scope);
}
$(el).popover({
trigger: 'click',
html: true,
content: content,
placement: attrs.placement
});
}
};
});
在我的控制器中,我实现了函数login() 让我们在控制器login()函数中说我得到了对HTTP / POST的成功响应 实际关闭弹出窗口的最佳做法是什么?我能想到&#34;肮脏的黑客&#34;迫使关闭,但我想这可以以更合适的方式完成......
&#34;问题&#34;我可能可能与我在指令中使用$ compile将内容绑定到控制器范围这一事实有关,因此我无法从链接函数中关闭它。
谢谢,
桑德