Javascript 选择菜单上的角度过滤器禁用过滤元素指令中的按钮

Javascript 选择菜单上的角度过滤器禁用过滤元素指令中的按钮,javascript,html,dom,angular-filters,Javascript,Html,Dom,Angular Filters,我有一个从托管服务运行的angular应用程序。我面临的问题相对较小,但令人沮丧 我使用ng repeat和一个基于使用ng model的select元素的值的过滤器将一组自定义指令加载到页面中。它大部分工作正常 在元素指令中,我还有一个“关闭”按钮,用于从页面中删除元素。当我更改select菜单的值以显示刚刚关闭的元素时,问题就出现了。元素重新出现后,元素中的按钮将不会触发回调。我认为这与link函数只发生一次有关,但在使用select菜单进行多次切换后,该功能会返回 如果有人对此有任何见解,

我有一个从托管服务运行的angular应用程序。我面临的问题相对较小,但令人沮丧

我使用ng repeat和一个基于使用ng model的select元素的值的过滤器将一组自定义指令加载到页面中。它大部分工作正常

在元素指令中,我还有一个“关闭”按钮,用于从页面中删除元素。当我更改select菜单的值以显示刚刚关闭的元素时,问题就出现了。元素重新出现后,元素中的按钮将不会触发回调。我认为这与link函数只发生一次有关,但在使用select菜单进行多次切换后,该功能会返回

如果有人对此有任何见解,我将不胜感激。当某物被移除或带回来时,过滤器具体做什么?为什么这会导致事件句柄不起作用


若要查看行为,请单击任何元素上的“隐藏”,然后尝试选择该元素,并查看“隐藏”按钮是否不起作用。

我将使用发布代码。不是我的确切代码,但我添加了一个plunk来演示它
    angular.module("App",[])
    .directive("test",function(){
      return {
        restrict: 'E',
        scope:{
          name:'@'
        },
        templateUrl:"test.html",
        link: function(scope,element,attrs){
          scope.hide=function(){
             element.remove();
          };
        }
      };
    })
    .controller("AppController",['$scope',function($scope){
   $scope.examples=[
        {
          name:'first'
        },
        {
          name:'second'
        },
        {
          name:'third'
        }
        ];
    }]);