I'm using Angular v1.2.0rc1 and Angular-UI Bootstrap.
[edit] What I want is a load-on-demand with cache while using an accordeon.
I'm using an accordion group from here. With some backend requeriments: I would like to load the contents for inside of the accordion only when the accordion is opened (clicked).
Then, I want that response be cached so you can open/close as many as you want and not overload the server.
I tried using ng-click on the heading but it gets override via the AngularUI Bootstrap.
Is there a way to solve this?
You can use the accordion heading tag to catch the ng-click
<div accordion ng-controller="AccordionCtrl">
<div accordion-group ng-repeat="group in groups">
<div accordion-heading >
<div ng-click='loadGroup(group)'>
{{group.title}}
</div>
</div>
{{group.loaded}}
</div>
</div>
with this controllers
var AccordionMenuCtrl = ['$scope', '$http' function ($scope, $http) {
$scope.groups = [
{
url: 'http://whatever',
title: 'whatever'
},
{
url: 'http://whatever_else',
title: 'whatever else'
}
]
$scope.loadGroup = function (group) {
$http.get(group.url).success(function (data) {
group.loaded = data
});
}
}];
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With