Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/464.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Javascript AngularJS-如何向引导模式目标添加条件?_Javascript_Html_Css_Angularjs_Twitter Bootstrap - Fatal编程技术网

Javascript AngularJS-如何向引导模式目标添加条件?

Javascript AngularJS-如何向引导模式目标添加条件?,javascript,html,css,angularjs,twitter-bootstrap,Javascript,Html,Css,Angularjs,Twitter Bootstrap,因此,我有一个在点击按钮时出现的模式,但是我只希望在满足某些条件(在我的控制器中定义)时出现该模式 HTML代码: <button class="btn btn-primary-outline" type="button" data-uk-modal="{target:'#previewModal' }" ng-click="previewOfferBefore()">Preview</button> 我也尝试过的一种方法是使用ng href代替bootstrap的da

因此,我有一个在点击按钮时出现的模式,但是我只希望在满足某些条件(在我的控制器中定义)时出现该模式

HTML代码:

<button class="btn btn-primary-outline" type="button" data-uk-modal="{target:'#previewModal'
}" ng-click="previewOfferBefore()">Preview</button>

我也尝试过的一种方法是使用ng href代替bootstrap的data uk模式,但这也不起作用。我知道我的控制器函数很好,因为当我把{{previewLink}}放在一个pHTML标记中时,它会打印出我想要的正确id。因此,问题在于如何在button类中绑定数据。

如果您同意禁用或灰显按钮,那么一个解决方案是使用ng disabled。你的控制器看起来像这样

$scope.previewOfferBefore = function() {
if (/*some conditions here*/) {
     $scope.canClick= true;
 }
else {
     $scope.canClick= false;
 }
}
然后你的html就会变成

 <button ng-disabled="canClick" class="btn btn-primary-outline" type="button" data-uk-modal="{target:'#previewModal'
 }" ng-click="previewOfferBefore()">Preview</button>
预览

如果您的按钮在if语句中出现错误,那么它将变得不可点击。

如果您同意禁用或灰显按钮,那么一种解决方案是使用ng disabled。你的控制器看起来像这样

$scope.previewOfferBefore = function() {
if (/*some conditions here*/) {
     $scope.canClick= true;
 }
else {
     $scope.canClick= false;
 }
}
然后你的html就会变成

 <button ng-disabled="canClick" class="btn btn-primary-outline" type="button" data-uk-modal="{target:'#previewModal'
 }" ng-click="previewOfferBefore()">Preview</button>
预览

然后,如果您的按钮在if语句中出现错误大小写,则该按钮将变得不可点击。

您可以只使用两个按钮,然后根据您的表达式使用
ng if
ng show
仅显示其中一个按钮。你可以简单地在里面使用角度

<button ng-show="previewLink !== '#'" type="button" data-uk-modal="{target: '#previewLink'}" ng-click="previewOfferBefore()">
    Preview
</button>

<button ng-show=""previewLink === '#'"" type="button" data-uk-modal="{target: '#'" ng-click="previewOfferBefore()">
    Preview
</button>

并将
value
绑定到所需的目标。我没有尝试过这个,可能需要一些调整。

您可以简单地使用两个按钮,然后根据您的表达式使用
ng if
ng show
仅显示其中一个按钮。你可以简单地在里面使用角度

<button ng-show="previewLink !== '#'" type="button" data-uk-modal="{target: '#previewLink'}" ng-click="previewOfferBefore()">
    Preview
</button>

<button ng-show=""previewLink === '#'"" type="button" data-uk-modal="{target: '#'" ng-click="previewOfferBefore()">
    Preview
</button>
并将
value
绑定到所需的目标。我还没有试过这个,可能需要一些调整