【发布时间】:2016-01-15 15:20:02
【问题描述】:
所以我有一个在单击按钮时出现的模式 - 但是我希望模式仅在满足某些条件(在我的控制器中定义)时出现。
HTML 代码:
<button class="btn btn-primary-outline" type="button" data-uk-modal="{target:'#previewModal'
}" ng-click="previewOfferBefore()">Preview</button>
以上工作(点击时弹出带有 id 'previewModal' 的模态)。所以我的方法是在控制器中添加条件,并使用 Angular 数据绑定在其中定义“目标”的值。
即:
<button class="btn btn-primary-outline" type="button" data-uk-modal="{target: {{ previewLink
}}}" ng-click="previewOfferBefore()">Preview </button>
那么控制器会:
$scope.previewOfferBefore = function() {
if (/*some conditions here*/) {
$scope.previewLink = '#'; /*don't let a modal pop up */
}
else {
$scope.previewLink = '#previewModal' /*let the modal pop up */
}
}
我也尝试过的一种方法是使用 ng-href 而不是 bootstrap 的 data-uk-modal,但这也不起作用。我知道我的控制器功能很好,因为当我将 {{ previewLink }} 放在 p html 标记内时,它会打印出我想要的正确 id。所以问题是我如何在按钮类中绑定数据。
【问题讨论】:
标签: javascript html css angularjs twitter-bootstrap