【发布时间】:2018-10-27 14:54:21
【问题描述】:
我正在使用ng-class 添加 CSS 类。即使有很多关于此的文章,我也无法使用ng-class 添加函数调用。
我有以下表达式。
ng-class="{'highlighter-row-Class' : (file.id == 1 && file.processed),
'bold-row-Class' : lastSelectedResumeId == file.attributes.name,
'failed-doc': !file.processed}"
现在,可以添加多个类。但是,我想在这里再添加一个条件,它将调用一个方法并返回一个类名:
$scope.getclass = function() {
return 'someclass';
}
我尝试在最后一个条件之后在ng-class 中使用此方法,但它不起作用。那么,谁能告诉我如何正确使用ng-class?
另一个尝试(根据建议):
ng-class="[{'highlighter-row-Class' : (file.id == 1 && file.processed),
'bold-row-Class' : lastSelectedResumeId == file.attributes.name,
'failed-doc': !file.processed }, getClassForHrms(file)]"
功能:
$scope.getClassForHrms = function (file) {
if (file.attributes.hrmsMandatoryFieldsMissing) {
return "missingfieldspresent";
} else if (file.attributes.isDocumentDuplicated) {
return "documentduplicate";
} else if (!file.attributes.isDocumentDuplicated) {
return "documentuploadfailed";
}
};
使用的 CSS:
.missingfieldspresent {
color: red;
}
.documentduplicate {
color: purple;
}
.documentuploadfailed {
color: deeppink;
}
这是生成的 HTML 呈现的内容
<tr ng-repeat="file in processResumeFiles" ng-class="[{'highlighter-row-Class' : (file.id == 1 && file.processed),
'bold-row-Class' : lastSelectedResumeId == file.attributes.name,
'failed-doc': !file.processed }, getClassForHrms(file)]"
class="ng-scope [object Object] documentduplicate">
【问题讨论】:
-
是的,我知道,我也试过了,但是请看我的问题,我说的是如何在我的 ng-class 中使用它
-
您是否尝试过插值,即
class="{{ getclass() }}"? -
是的,我也试过了
标签: javascript jquery css angularjs