2013-11-26 45 views
0

我有一個twitter引導popover,我動態地用HTML填充。在該HTML中,是一個無序列表,其中包含用於控制我的控制器上的方法的ng-click屬性的li元素...動態HTML包含一個不會觸發的Angular'ng-click'屬性

但是,li元素ng-click事件不會觸發。然而,我有一個按鈕,可以在頁面加載時加載一個完全觸發的ng-click屬性。但是,在動態HTML中,ng-click不起作用。我認爲這是因爲動態HTML由於某種原因無法訪問$scope。有誰知道如何解決這個問題?

  var popoverContent = '<ul class="list-unstyled">' 
      cities.forEach(function(city, index){ 
       popoverContent = popoverContent + '<li class="town-listing" ng-click="selectAutocompleteCity('+ city.name +')"><span class="city-name">' + city.name + '</span></li>'; 
      }); 
      popoverContent = popoverContent + '</ul>'; 
      $('#town-search-field').popover({ 
       animation: true, 
       html: true, 
       content: '<div id="city-popover-inner" style="min-height:100px;width:250px;"></div>', 
       placement: 'bottom', 
       trigger: 'manual', 

      }); 
+1

如果你在角度範圍之外「弄亂了DOM」,你需要告訴角度做它的髒檢查:'$ scope。$ apply()'。我必須看到更大的背景才能更具體。 –

回答

0

從你發佈的小代碼中,我可以告訴你所有的錯誤。 jQuery做事的方式和做事的角度都非常不同。再一次,你沒有發佈太多的代碼,但我相信你會更好地把你擁有的任何邏輯放到自定義指令中。

相關問題