AngularJs - 如何在变量中检查indexOf?

时间:2014-01-06 15:09:11

标签: angularjs indexof

我有这个HTML代码,如果“modalOptions.actionButtonText”包含“删除”,那么我需要显示危险按钮而不是主按钮

Html代码:

<button class="btn btn-primary" data-ng-click="modalOptions.ok();">{{modalOptions.actionButtonText}}</button>

我知道我们可以使用“ng-if”来检查条件但是有什么办法可以在angularjs或其他东西中使用indexOf来实现这个目的吗?

2 个答案:

答案 0 :(得分:2)

看起来很脏,但确实有效。

See working demo

<button class="btn" 
  data-ng-class="{'btn-primary': modalOptions.actionButtonText.indexOf('delete') == -1,
                  'btn-danger': modalOptions.actionButtonText.indexOf('delete') > -1}"
  data-ng-click="modalOptions.ok();">{{modalOptions.actionButtonText}}</button>

ngClass directive允许您根据布尔表达式添加/删除类。所以在这里,如果在按钮文本中找不到“删除”,我会添加btn-primary,如果是,则添加btn-danger

答案 1 :(得分:1)

我想要类似的东西,但是用速记写了:

<li ng-class="haystack.indexOf('needle') != -1 ? 'active' : 'inactive'">