问题
如何根据用户角色或用户组隐藏或显示 HTML?
回答
本文章包含以下组别:
根据用户角色隐藏或显示 HTML
如果您要隐藏的信息是敏感信息,此解决方案可能不适合您,因为用户可以使用其网络浏览器中的查看页面来源功能查看完整文本。
在帮助中心实施代码的示例如下。首先将代码放在 在 CSS 模板下插入以下代码: 在 JS 模板下插入以下代码: 根据用户组显示或隐藏 HTML,这个流程与根据用户角色显示或隐藏 HTML 步骤相同。首先将代码放在 在 CSS 模板下插入以下代码: 在 JS 模板下插入以下代码: 有关编辑帮助中心模板的更多信息,请参阅文章:自定义帮助中心主题(Guide Professional 和 Enterprise)。home_page.hbs
文件中第一个元素的正下方。<div class="anonymous">
<h1>Welcome Anonymous User!</h1>
</div>
<div class="end_user">
<h1>Welcome End-User!</h1>
</div>
<div class="agent">
<h1>Welcome Agent!</h1>
</div>
<div class="manager">
<h1>Welcome Manager!</h1>
</div>div.anonymous, div.end_user, div.agent, div.manager {
width: 100%;
text-align: center;
display: none;
}const anonymous = document.querySelector(".anonymous")
const end_user = document.querySelector(".end_user")
const agent = document.querySelector(".agent")
const manager = document.querySelector(".manager")
// Show div html based on role
if (HelpCenter.user.role=="anonymous"){
anonymous.style.display = "block";
}
if (HelpCenter.user.role=="end_user"){
end_user.style.display = "block";
}
if (HelpCenter.user.role=="agent"){
agent.style.display = "block";
}
if (HelpCenter.user.role=="manager"){
manager.style.display = "block";
}
根据用户组隐藏或显示 HTML
home_page.hbs
文件中第一个元素的正下方。const user_group = document.querySelector(".user_group")
<div class="user_group">
<h1>Welcome to L2 Support!</h1>
</div>
div.user_group {
width: 100%;
text-align: center;
display: none;
}
if (groups[i].name == 'L2 Support' && groups[i].isActive
== true)
中的“L2 Support”更新为帐户中的组名。 const groups = HelpCenter.user.groups;
for (let i = 0; i < groups.length; i++) {
if (groups[i].name == 'L2 Support' && groups[i].isActive == true) {
user_group.style.display = "block";
}
}