是否可以在JSP中使用java脚本,如下所示
var f = null;
'<sec:authorize access="hasAnyRole(\'c2ladmin\',\'provider\')">'
f = function() {
alert('hi');
}
'</sec:authorize>';
'<sec:authorize access="hasRole(\'teacher\')">'
f = function() {
alert('teacher');
}
'</sec:authorize>';
注意:需要根据用户的角色从Javascript渲染视图。
答案 0 :(得分:10)
您可以尝试以下方法:
<sec:authorize access="hasAnyRole('admin','superadmin')" var="isAuthorizeAny"></sec:authorize>
<sec:authorize access="hasRole('user')" var="haRoleUser"></sec:authorize>
<script type="text/javascript">
if('${isAuthorizeAny}' == true){
f = function() {
alert('hi Admini');
}
}
if('${haRoleUser}' == true){
f = function() {
alert('hei User');
}
}
</script>
答案 1 :(得分:2)
这对我有用
<input id="isRoleExterno" access="hasRole('ROLE_EXTERNO')" type="text" class="hide" value="true"/>
<input id="isRoleExterno" access="!hasRole('ROLE_EXTERNO')" type="text" class="hide" value="false"/>
在我的JS中
var isRoleExterno = $('#isRoleExterno').val();
if(isRoleExterno){var clazz="hide";}else{var clazz="";}