当我在检查其中的复选框后关闭ngdialog
弹出窗口,如果我打开它再次关闭,则复选框将被取消选中,为什么会发生这种情况?有人知道吗?
这是我的脚本标签
<script type="text/ng-template" id="templateId">
<div id="target" ng-click="test()" ng-controller="tt">
Click here
<input type='checkbox' placeholder=''>
</div>
</script>
这是我的例子jsfiddle http://jsfiddle.net/mb6o4yd1/264/
答案 0 :(得分:1)
似乎这个ngDialog
模块在关闭后会破坏控制器。如果要访问并保留控制器中的更改。使用控制器中的$parent
。
我为您创建了 fiddle 。
<script type="text/ng-template" id="templateId">
<div id="target" ng-click="test()">
Click here
<input type='checkbox' ng-model="$parent.checkbox">
</div>
或强>
使用您的方法,您必须在离开对话框
之前将值保存到工厂中希望它有所帮助。
答案 1 :(得分:0)
您需要在复选框上声明模型,例如:
然后,您需要在关闭对话框时将该值复制到您选择的范围,以便在再次打开模式对话框时,它可以访问该值(前提是它可用)。当对话框关闭时,将处理模态对话框的范围,因此您无法在其中保存其状态。
答案 2 :(得分:0)
绑定一个包含复选框值的模型并将其保存在父控制器中。这可以解决您的问题。