2016-09-02 1 views
0

내 Asp.net MVC 프로젝트에서 jQuery datatable을 사용하고 있습니다. 데이터 테이블의 모든 행에서 나는 다음과 같은 몇 가지 작업 dropdown-menu 있습니다jquery 데이터 테이블에서 승인되지 않은 사용자를위한 일부 버튼 숨기기

enter image description here

내가 허가받지 않은 사용자에 대해이 드롭 다운의 일부 버튼을 숨기려. 추가에 대한

내 JS 코드는이 드롭 다운 메뉴는 다음과 같습니다

{ 
    data: 'UserId', 
    name: 'UserId', 
    render: function (data) { 
     return '<div class="btn-group btn-group-sm operation"> <button type="button" class="btn btn-default dropdown-toggle" data-toggle="dropdown" aria-expanded="false">عملیات <span class="fa fa-caret-down"></span></button> <ul class="dropdown-menu"> <li><a href="/Admin/Customer/Edit/' + data + '"><span class="fa fa-pencil"></span>ویرایش</a></li> <li><a href="/Admin/Gift/Details/' + data + '"><span class="fa fa-gift"></span>امتیاز هدیه</a></li> <li><a href="/Admin/Customer/PointDetails/' + data + '"><span class="fa fa-area-chart"></span>گزارش ریز امتیازات</a></li> <li class="divider"></li><li><a href="javascript:void" id="' + data + '" onclick="deleteRow(' + data + ',\'/Admin/Customer/Delete\'' + ')"><span class="fa fa-trash"></span>حذف</a></li></ul> </div>'; 

    }, 
    orderable: false 
} 

나는이 프로젝트에 Asp.net 신원을 사용합니다.

어떻게하면됩니까? 사전

답변

0

에서

덕분에 사용할 수있는 보안 역할에 해당하는 각 버튼에 클래스를 추가합니다. 숨겨진 모든 버튼으로 시작한 다음 현재 사용자 ID에 대해 권한이 부여 된 역할에 해당하는 클래스가있는 단추를 표시하십시오.

이런 식으로 뭔가 :

<button class="admin">Admin Stuff</button> 
<button class="admin super">Superuser Stuff</button>  
<button class="admin super normal">Normal Stuff</button> 
<button class="admin super normal guest">Guest Stuff</button> 

그리고, 당신은 페이지를 열 때 :

이 예는 보안 역할의 이름이 추가 한 클래스와 같은 이름이 있다고 가정
$(document).ready(function() { 
    $('button').hide(); 
    // find the role of the current user 
    $('.' + theRole).show(); 
}); 

버튼에. 그것은 코드의 한 줄만 필요하기 때문에 가장 쉽습니다. 어떤 이유로 든 할 수 없다면 if else 문을 사용하여 사용자가 속한 역할을 결정하고 해당 역할과 동등한 클래스를 표시해야합니다.

관련 문제