저는 AngularJS와 Kendo Grid를 함께 사용하고 있습니다. HTML (표시 할보기 포함), 컨트롤러 (보기와 모델 간 좌표), 서비스 (비즈니스 논리)의 세 파일이 있습니다. 나는 Kendo Grid와 버튼을 가지고있다. Kendo Grid 열에있는 링크를 클릭하면 표시/숨기기를 원합니다. 아래는 코드 스 니펫입니다.검도 그리드 열의 링크에서 함수 호출
HTML
<div ng-app="myApp">
<div ng-controller="myCtrl">
<div id="grid" kendo-grid k-options="kendoGrid"></div>
<input type="button" id="myButton" ng-show="showButton"/>
</div>
</div>
서비스 :
var myApp = angular.module('myApp',[]);
myApp.service('myService', function() {
this.showMe = false;
this.changeShow = function(){
this.showMe = !this.showMe;
};
this.getKGrid = function() {
var kGrid = {
dataSource: [{"Col1":"Val1","Col2":"Val2"}],
columns: [{
field: "Col1",
title: "Col1"
},
{
field: "Col2",
title: "Col2",
template: "<a href='\\#' class='link' ng-click='this.changeShow()'>#=Col2#</a>"
}
]
};
return kGrid;
};
});
컨트롤러 : 나는 검도 그리드 및 칼럼에 대한 링크를 볼 수 있어요하지만 난 수 없습니다입니다
myApp.controller('myCtrl', function ($scope, myService) {
$scope.kendoGrid = myService.getKGrid();
$scope.showButton = myService.showMe;
$scope.$watch(function(){return myService.showMe;}, function (newValue, oldValue) {
if (newValue == oldValue) return;
$scope.showButton = newValue;
}, true);
});
컨트롤러를 통해이 열을 클릭하면 표시/숨기기 버튼. 여기에서 수정해야 할 부분을 도와주십시오. 또는이를 달성하기 위해 다른 방법을 따라야합니까?
미리 감사드립니다.
도움을 주셔서 감사합니다. 컨트롤러에서이 함수를 움직이면, 저에게 도움이되었습니다. 사실 저는 Controller를 통해 어떤 일을 할 수있는 방법을 찾아 내려고했기 때문에 컨트롤러에 어떤 논리도 나타나기를 원하지 않았습니다. 나는 링크 클릭으로 또 다른 문제에 직면하고있다. 해당 행의 세부 정보가 들어있는 행 열 클릭 팝업 창을 표시하고 싶습니다. http://demos.telerik.com/kendo-ui/grid/custom-command에서 주어진 것과 같은 것. 그러나이 기능은 각도 서비스의 새로운 맞춤 버튼이 아닌 기존 열의 링크를 클릭하면 작동합니다. 나를 안내 해줘. – pogo22
도와 드리겠습니다. 그러나 답을 수락하여 해결 된 것으로 등록되고 다른 사람들이 새로운 문제에 대한 해결책을 제시 할 수 있도록 새로운 질문을하십시오. – tasseKATT