2014-04-28 69 views
0

我在當前的應用程序中使用KendoUI的Angular指令。我有一個案例,當我需要使用ng-class基於一些字段值。我曾嘗試下面的代碼,但它不工作使用具有角度和劍道網格的ng-class

$scope.getClass = function (b) { 
     console.log(b); 
    } 
$scope.columns = [ 
     { "field": "Name", "title": "Name" }, 
     { "field": "StudentId", "title": "Id" }, 
     { "field": "Address", "title": "Address", template: "<div ng-class='getclass(#:Address#)'>#:Address#</div>" } 
    ] 

回答

1

一切都取決於你的getclass()方法返回時,表達式的值必須爲true上市css類如之一。以下將紅色添加到<p>標籤,(你不能返回類的唯一字符串名稱):

<p ng-class=" {red : true}" >Using String Syntax</p> 

OR

<span class="base-class" ng-class="myVar='red'">Sample Text</span> 

或者你需要使用ng-model的類之間的交換您在ng-class屬性中列出:

<p ng-class="style">Using String Syntax</p> 
<input type="text" ng-model="style" placeholder="Type: bold strike red"> 

OR ng-click設置代表類變量。

<input id="clearbtn" type="button" value="clear" ng-click="myVar=''"> 
<br> 
<span class="base-class" ng-class="myVar='my-class'">Sample Text</span> 

調查documentation

這是你如何通過劍道模板變量進入範圍的方法(plunker):

$scope.columns = [ 
        { "field":"name", "title": "name", template: '<div ng-class="getClass(\'#:name#\')">#:name#</div>' }, 
    ]; 
+0

我知道如何使用'數據-NG-class'我關心的是如何與劍道數據項將它綁定。作爲使用'#:PropertyName#'格式的kendo。 – RaviMittal

+0

對不起,我誤解了,我已經延長了我的答案看看,希望它能爲你工作。 – Vojtiik

+0

@RaviMittal它看起來如何,它對你有用嗎? – Vojtiik