之前我添加了一个ng-click事件来调用$event.stopPropagation
:
<td ng-click="$event.stopPropagation();">
<button type="button" class="btn btn-default margin-right-5" ui-sref="patient( { id : patient._id } )">
<i class="fa fa-edit"></i>
</button>
<button type="button" class="btn btn-danger" ng-click="vm.deletePatient( patient._id )">
<i class="fa fa-trash-o"></i>
</button>
</td>
现在我已经重构了我的代码并使用了DTColumnBuilder
DTColumnBuilder.newColumn( '_id' ).withTitle( 'Options' ).notSortable()
.renderWith( function ( data, type, full, meta ) {
return '<button type="button" class="btn btn-default margin-right-5" ui-sref="patient( { id : \'' + data + '\' } )">' +
'<i class="fa fa-edit"></i> ' +
'</button>' +
'<button type="button" class="btn btn-danger" ng-click="vm.deletePatient(\'' + data + '\')">' +
'<i class="fa fa-trash-o"></i>' +
'</button>'
} )
如何将$ event.stopPropagation添加到parent td
?
答案 0 :(得分:1)
我不知道这是否是最佳方法,但我添加了一个div并在其中添加了$event.stopPropagation()
。如果在使用DTColumnBuilder
添加新列时存在ng-click方法,请告诉我,以便我可以重构我的代码。这只是一个解决方法。
DTColumnBuilder.newColumn( '_id', 'foo' ).withTitle( 'Options' ).notSortable()
.renderWith( function ( data, type, full, meta ) {
return '<div ng-click="$event.stopPropagation()">' +
'<button type="button" class="btn btn-default margin-right-5" ui-sref="patient( { id : \'' + data + '\' } )">' +
'<i class="fa fa-edit"></i> ' +
'</button>' +
'<button type="button" class="btn btn-danger" ng-click="vm.deletePatient(\'' + data + '\')">' +
'<i class="fa fa-trash-o"></i>' +
'</button>' +
'</div>'
} )