2016-07-29 2 views
1

datatables를 사용하여 각도로 테이블을 생성합니다. 범위에서 값을 사용하고이 값을받은 데이터와 비교합니다.ng-show가 datatables 열에서 작동하지 않습니다.

"columns": [{ data: null, render: function (data, type, row) { 
var roleid =angular.element('#TextkeysController').scope().currentRole; 
return '<p ng-show="'+data.id+' == '+roleid+'" class="btn btn-success btn-xs disabled" value="connected" >connected</p><p ng-show="'+data.id+' != '+roleid+'" class="btn btn-danger btn-xs" value="notConnected" ng-click="connectRole(\''+data.id+'\',\''+data.name+'\')">Not connected</p>'; 
}, name: 'connect', "className":"center"}] 

데이터를로드 할 때 두 버튼이 행 - 열에 나타나며 조건은 클릭 - 클릭 동작을 클릭 할 때만 적용됩니다.

왜 이런 일이 발생하는지 알 수 있습니까?

답변

2

분명히 각은 dataTables에 의해 삽입 된 HTML을 인식하지 못합니다.

withOption('drawCallback', function() { 
    $scope.$apply($compile(angular.element('#tableId'))($scope)) 
} 

#tableId이 테이블의 id입니다 :이 경우에 나는 $compiledrawCallback의 렌더링 된 내용을 사용합니다. 그러나 일반적으로 이것은 다소 엉망입니다, imho. dataTables 행 또는 열에 첨부 된 특정 각도 지시문이 필요할 때마다 각도 모양을 datatable="ng"으로 렌더링합니다. 천천히 그러나 더 청결하고 유지할 수 있습니다.

+0

withOption을 datatables javascript 파일이나 컨트롤러에 추가해야합니까? – jValls

+0

안녕하세요 @jValls 저는 각도 태그 테이블을 사용하고 있다고 생각했습니다. (왜 태그를 다시 지정 했나요?) 위의 그림은 각도 데이터 테이블 방법입니다. 지시문없이 jQuery dataTables를 사용하는 경우 [documentation/as drawCallback] (https://datatables.net/reference/option/drawCallback)을 포함해야합니다. – davidkonrad

+0

ng-show를 사용하지 않고 조건을 직접 추가하는 문제를 해결했습니다. 그러나 당신의 도움에 감사드립니다. – jValls

관련 문제