jQuery DataTable Detail不执行onclick href
我有一个jQuery数据表,当打开详细信息时,它会显示一些信息和一个链接(href),该链接可以调用控制器的一个函数,但不会单击 在创建我的datatable时,我在论坛中使用$compile作为搜索,以识别控制器的函数,问题是它甚至没有调用此函数。 我已经尝试通过“警报('test')”更改函数调用,但也没有执行jQuery DataTable Detail不执行onclick href,jquery,angularjs,datatables,Jquery,Angularjs,Datatables,我有一个jQuery数据表,当打开详细信息时,它会显示一些信息和一个链接(href),该链接可以调用控制器的一个函数,但不会单击 在创建我的datatable时,我在论坛中使用$compile作为搜索,以识别控制器的函数,问题是它甚至没有调用此函数。 我已经尝试通过“警报('test')”更改函数调用,但也没有执行 '<a ng-click="gerarDacte(' + d.documentoCodigo + ');" class="btn btn-icon btn-sm btn-twi
'<a ng-click="gerarDacte(' + d.documentoCodigo + ');" class="btn btn-icon btn-sm btn-twitter mr5"><i class="fa fa-twitter"></i> Gerar</a> ' +
我在中创建了一个示例
谢谢您如上面的小评论所述,您应该使用
$compile
将子行绑定到$scope
:
} else {
// Open this row
row.child(format(row.data()), 'no-padding').show();
tr.addClass('shown');
$compile(row.child()[0])($scope); //<-- HERE
$('div.slider', row.child()).slideDown();
}
$scope.gerarDacte = function(id){
alert(id);
}
现在它可以工作了,更新了fiddle->
但我无法理解为什么要将子行绑定到
$scope
,这似乎有点过分了。您可以将javascript/jQuery事件监听器绑定到按钮(或其他)上,并从该监听器中访问$scope
,您不需要一直访问。如果您对表单元素有双向绑定,或者使用了更高级的指令,这是可以的,但是简单的单击是不值得的。请单击
并创建一个回调函数,您几乎肯定需要将该回调函数包装在$scope.$applyAsync
很抱歉格式错误。Aluan Haddad,在本例中我会使用一些示例,因为我不知道如何在调用函数时使用$scope.$ApplyAsync
。我不知道现在是否是使用它的时候。谢谢你需要$compile
的内容,有数百个类似的问题。感谢davidkonrad的帮助,工作非常顺利。我开始使用angularjs和jquery,我不知道哪些仍然是最佳实践,我看到了一些与我尝试使用的jquery相同的示例。
} else {
// Open this row
row.child(format(row.data()), 'no-padding').show();
tr.addClass('shown');
$compile(row.child()[0])($scope); //<-- HERE
$('div.slider', row.child()).slideDown();
}
$scope.gerarDacte = function(id){
alert(id);
}