Интеграция AngularJS с Webix, вызов события, определенного в объекте конфигурации

Я создаю приложение с Angular JS и Webix.

Как вызвать функцию (скажем, "accountSelected"), отмеченную при инициализации конфигурации, которая определена в угловой области того же контроллера,

HTML:

<html xmlns:ng="http://angularjs.org&quot; ng-app="accountSearchApp">
<body ng-controller="searchController">
    <div webix-ui="datatable_config" ></div>
</body>
</html>

СЦЕНАРИЙ:

var accountSearchApp = angular.module('accountSearchApp', [ "webix" ]);

// defining controller
accountSearchApp
        .controller("searchController", function($scope){

    $scope.datatable_config = {
                        id: "dt_01",
                        view:"datatable",
                        columns:[
                            {id:"edit", header:["Choose", {
                                content:"textFilter", placeholder:"Type here to filter the grid",
                                compare:oneForAll, colspan:2
                                }], width:200,  template:"<a href='javascript:void(0)' onclick='accountSelected()'>Select</a>" 
                            },
                            { id:"AccountName", header:["Account Name",null],   width:300,  sort:"string"},
                        ],
                        data: arryObj
    };

    $scope.accountSelected = function(){
        console.log(" SUCCESS ");
    }
});

Я могу вызывать, когда определение accountSelected функции находится вне области контроллера, мне нужно, чтобы оно работало с функцией, определенной в области контроллера.

1 ответ

Решение

Вы можете заменить встроенный обработчик onclick функцией js. Как это

columns:[
  { id:"edit", header:"Choose", width:200,
    template:"<a href='javascript:void(0)' class='myLink'>Select</a>" 
  }
],
onClick:{
  myLink:function(e, id){ $scope.accountSelected(id); }
}
Другие вопросы по тегам