为具有 Spring 安全性的非授权用户隐藏 Datatables 中的按钮
Hide buttons in Datables for non-authorized users with Spring Security
我需要为非授权用户隐藏 Datables 中的按钮。
简单地说 jsp 我使用 spring 安全标签来为非授权用户隐藏元素。
例如隐藏删除按钮:
<sec:authorize access="hasRole('ROLE_ADMIN')"> <a href="delete/${author.id}">Delete</a></sec:authorize>
但在 jquery 数据表中,按钮来自内部 javascript 配置。而且我不能使用 spring 安全标签。
例如。 DataTables 中的删除按钮:
"buttons": [
{
text: "Delete",
action: function (e, dt, button, config){
//button onClick here
}
}
]
这是一个例子:
var authStatus = true; //your auth status variable from JSP
var buttons = [];
if (authStatus) {
buttons = [
{
text: "Delete",
action: function(e, dt, button, config) {
//button onClick here
}
}
];
}
$('#example').DataTable({
dom: 'Bfrtip',
buttons: buttons,
});
您可以改为使用三元运算符将其内联编写,但不会那么清晰。
我需要为非授权用户隐藏 Datables 中的按钮。
简单地说 jsp 我使用 spring 安全标签来为非授权用户隐藏元素。
例如隐藏删除按钮:
<sec:authorize access="hasRole('ROLE_ADMIN')"> <a href="delete/${author.id}">Delete</a></sec:authorize>
但在 jquery 数据表中,按钮来自内部 javascript 配置。而且我不能使用 spring 安全标签。 例如。 DataTables 中的删除按钮:
"buttons": [
{
text: "Delete",
action: function (e, dt, button, config){
//button onClick here
}
}
]
这是一个例子:
var authStatus = true; //your auth status variable from JSP
var buttons = [];
if (authStatus) {
buttons = [
{
text: "Delete",
action: function(e, dt, button, config) {
//button onClick here
}
}
];
}
$('#example').DataTable({
dom: 'Bfrtip',
buttons: buttons,
});
您可以改为使用三元运算符将其内联编写,但不会那么清晰。