페이징 된 테이블 (primeface datatable)을 사용하여 페이지를 변경하면 내용이 ajax를 통해로드됩니다. ajax 요청이 완료되면 data-ng-click 속성이 모든 행에 추가됩니다.각도 js ng-click은 데이터 테이블의 행에 프로그래밍 방식으로 추가되었습니다.
angularizeDataTable();
function angularizeDataTable(){
$("[data-rk]").each(function(i, val){
idt = $(this).attr("data-rk").split("-")[0];
idv = $(this).attr("data-rk").split("-")[1];
$(this).attr("data-ng-click", "init("+idt+","+idv+")");
})
.promise().done(function(){
app = angular.module('myapp', []);
app.controller('MainController', function($scope, $http){
$scope.init = function(idt,idv){
alert(idt+","+idv);
};
});
});
}
angularizeDataTable 기능을 : 여기
는 그럴 필요가 내가 추가하는 방법을 데이터 NG가-클릭 그럴 필요하는 속성 여기
<tr data-ng-click="init(1,2)" class="ui-widget-content ui-datatable-even ui-datatable-selectable ui-state-highlight" aria-selected="true" role="row" data-rk="1-2" data-ri="0" >
를 렌더링하는 방법과 각 응용 프로그램 및 컨트롤러로 정의하는 방법이다 페이지가로드 될 때마다 페이지가 변경 될 때마다 실행됩니다.
<p:ajax event="page" oncomplete="angularizeDataTable()" />
페이지 이벤트가 발생한 후 dat 클릭 한 번을 무시합니다. 이유가 무엇입니까?
을 작업 NG 클릭을 얻을 수있는 요소에 $ 컴파일 서비스를 실행하는 데 필요가 있다고 생각합니다. 어쩌면 이것을 읽으십시오 : http://stackoverflow.com/questions/14994391/thinking-in-angularjs-if-i-have-a-jquery-background –
나는 primefaces datatable의 힘을 결합하여 마스터/디테일 뷰를 만들려고합니다. 및 angularjs. 데이터 테이블을 수정할 수 없습니다. 결국 나는 그들을 따로 다루기로했다. 그러나 답장을 보내 주셔서 감사합니다. – longy