2016-08-04 160 views
0

我有一个定义为datatable的指令。这基本上是一个将在应用范围内使用的自定义模板表。列的值由范围变量$scope.getDisplayObject输入。我需要下载一个blob文件,因此需要在提供表格中某个特定列的值时随时修改html。 下面是代码:如何将嵌入点击通过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对NG-点击一个范围变量的引用{{项目.link}}它会在更改范围变量时更新,更新链接(在href中或在ng-click中调用一个函数)。