2016-08-04 3 views
0

У меня есть директива, называемая datatable. Это обычная таблица шаблонов, которая будет широко использоваться в приложении. Значения для столбцов подаются в него с помощью переменной области видимости $scope.getDisplayObject. Мне нужно загрузить файл blob, поэтому вам нужно изменить html на ходу, указав значение для одного конкретного столбца в таблице. Вот код:Как вставить ng-click через javascript в существующий элемент HTML

$scope.getDisplayObject = function(obj, key) { 
     var key = key.Fields[0].Key; 
     var valueObj = { value: obj[key], 
         color: '#6495ED' 
         }; 
     if (key == "col_for_downloadable_link") { 
      //Code to write the downloadable link. The blob will be the value corresponding to this particular key and can be accesses as obj[col_for_downloadable_link] 
     } 
     return valueObj; 
    }; 

Я уже пробовал следующие решения:

valueObj.value='<a href="#" ng-click=download(document) target="_blank">Content</a>' 
  • Пытались компиляции и добавления через $ компиляции, но как-то не мог понять.

Пожалуйста, предложите решение. Также дайте мне знать, если мне нужно поделиться дополнительной информацией.

+0

Директивы о динамически присоединенных элементах DOM не распознаются AngularJS – mhodges

+0

См. Эту ссылку, как сделать то, что вы пытаетесь сделать: http://stackoverflow.com/a/15843420/4987197 – mhodges

ответ

0

Не уверен, если я правильно понял вопрос, но взгляните на это:

https://plnkr.co/edit/zsIklpQUT72YoBBDg0rr?p=preview

<td><a href="#" ng-click={{item.link}} target="_blank">{{item.linkName}}</a></td> 

Если ваш HTML имеет на нг щелкните ссылку на переменную области видимости {{пункт .link}} будет обновляться при изменении переменной области видимости, обновлении ссылки (в href или при вызове функции ng-click).

Смежные вопросы