I cannot seem to find a way to call a function on the parent scope from within a directive without using isolated scope. I know that if I use isolated scope I can just use \
Since the directive is only calling a function (and not trying to set a value on a property), you can use $eval instead of $parse (with a non-isolated scope):
scope.$apply(function() {
scope.$eval(attrs.confirmAction);
});
Or better, simply just use $apply, which will $eval()uate its argument against the scope:
scope.$apply(attrs.confirmAction);
Fiddle