Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/angularjs/20.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Angularjs datatable中的RowCallback函数正在从锚标记中删除表达式?_Angularjs_Datatables - Fatal编程技术网

Angularjs datatable中的RowCallback函数正在从锚标记中删除表达式?

Angularjs datatable中的RowCallback函数正在从锚标记中删除表达式?,angularjs,datatables,Angularjs,Datatables,我在这里使用AngularJs表达式。因此,当我使用rowCallback函数编译rows时,锚标记中的表达式被删除。这个问题的解决办法是什么 rowCallback: function(row) { if (!row.compiled) { $compile(angular.element(row))($scope); row.compiled = true; } } 这是我在datatable的defaultContent中使用的锚标记 "defaultContent": "

我在这里使用AngularJs表达式。因此,当我使用
rowCallback
函数编译
row
s时,锚标记中的表达式被删除。这个问题的解决办法是什么

rowCallback: function(row) {  
if (!row.compiled) {
  $compile(angular.element(row))($scope);
  row.compiled = true;
}  }
这是我在datatable的defaultContent中使用的锚标记

"defaultContent": "<a class='btn btn-sm btn-default'ng-href='#{{exp_url}}'>click me</a>"
“defaultContent”:
在浏览器中,在数据表填充到锚点标记上方后检查

<a class="btn btn-sm btn-default"ng-href="#">click me</a>

这会造成问题,因为当我点击按钮时,什么也没发生


解决方案还是变通方法?

我遵循了
davidkonrad
的说明,它确实奏效了。关键是使用
render函数
而不是
defaultContent

并在渲染函数中返回锚定标记

“呈现”:函数(数据、类型、完整、元){
返回“”
}
这将完美地工作

不要使用
ng href attribute
,因为它将使用
href name
创建另一个属性。功能将保持不变。以下是检查代码的
外观:-

<a ng-href="#/app/customer/100" href="#/app/customer/100">Download</a>


这就是我问题的答案

我猜
exp\u url
指的是您的
ng repeat
中的一个属性?它无法工作,它只是呈现出
ng href='{{exp\u url}}'
,数据表不属于角度范围的其余部分或
ng repeat
子范围。为什么不像其他部分一样以“角度方式”渲染defaultContent?我没有使用ng repeat。但是数据存在于$scope.data中,但是为什么它在编译时会删除表达式或对其求值呢@davidkonradand您所说的
defaultContent render
像“角度方式”是什么意思?您是否希望使用
ng repeat
并在datatable中填充数据?好的,您仍然无权访问
$scope.data
defaultContent
中的列数据,它完全是静态的。你可以使用一个render函数并
return'不幸的是,我必须离开,看看你是否已经在你可以使用的
render:function(data,type,row,meta){…}的列定义中指定了
data:'exp\u url'
,我会记住它。谢谢