FuelUX 向导 如何禁用特定步骤?
FuelUX Wizard How to disable specific steps?
在我的网络表单中,我使用的是 fuelux 向导 (link: http://getfuelux.com/javascript.html#wizard ),并且我有不同角色的人来到此页面。我需要的是能够 "disable" 向导的某些步骤基于我在页面加载时获得的一些数据。我相信它与它的样式有关,但我没有找到我需要的东西。
例如,
我有步骤 1-6,假设有用户来到该页面。我将他识别为数据架构师,因此我需要禁用第 4 步和第 6 步。我有一些特定角色,我需要为每个角色禁用某些选项卡组合。
是否可以根据我在代码隐藏中将用户识别为什么角色,通过调用一些 javascript 来实现燃料 ux?我需要对特定步骤进行哪些更改才能使用户无法访问它?
编辑:
这是我的步骤:
<ul class="steps">
<li data-step="1" data-name="Documentation" class="active"><span class="badge">1</span>Documentation<span class="chevron"></span></li>
<li data-step="2" data-name="Business"><span class="badge">2</span>Business<span class="chevron"></span></li>
<li data-step="3" data-name="Application"><span class="badge">3</span>Application<span class="chevron"></span></li>
<li data-step="4" data-name="Data"><span class="badge">4</span>Data<span class="chevron"></span></li>
<li data-step="5" data-name="Infrastructure"><span class="badge">5</span>Infrastructure<span class="chevron"></span></li>
<li data-step="6" data-name="Security"><span class="badge">6</span>Security<span class="chevron"></span></li>
</ul>
我的问题真的是,有没有办法从后面的代码中禁用某些数据步骤?
我找到了一种方法,方法是在后面的代码中声明 int 数组,然后直接在我在 javascript 中初始化数组的地方访问它们。它看起来像这样:
后面的代码:
//Check which steps to disable
if (role.Contains("Data"))
{
disabledSteps = new int[] {5, 5};
}
else if (role.Contains("Infra"))
{
disabledSteps = new int[] {4, 5};
}
else if (role.Contains("Security"))
{
disabledSteps = new int[] { 4, 4 };
}
然后,使用我也在后面的代码中声明的 javascript 序列化器,javascript 看起来像:
var disabledSteps = <%= serializer.Serialize(disabledSteps) %>;
for(var i in disabledSteps){
alert(disabledSteps[i]);
$('#myWizard').wizard('removeSteps', disabledSteps[i], 1);
}
在我的网络表单中,我使用的是 fuelux 向导 (link: http://getfuelux.com/javascript.html#wizard ),并且我有不同角色的人来到此页面。我需要的是能够 "disable" 向导的某些步骤基于我在页面加载时获得的一些数据。我相信它与它的样式有关,但我没有找到我需要的东西。
例如,
我有步骤 1-6,假设有用户来到该页面。我将他识别为数据架构师,因此我需要禁用第 4 步和第 6 步。我有一些特定角色,我需要为每个角色禁用某些选项卡组合。
是否可以根据我在代码隐藏中将用户识别为什么角色,通过调用一些 javascript 来实现燃料 ux?我需要对特定步骤进行哪些更改才能使用户无法访问它?
编辑:
这是我的步骤:
<ul class="steps">
<li data-step="1" data-name="Documentation" class="active"><span class="badge">1</span>Documentation<span class="chevron"></span></li>
<li data-step="2" data-name="Business"><span class="badge">2</span>Business<span class="chevron"></span></li>
<li data-step="3" data-name="Application"><span class="badge">3</span>Application<span class="chevron"></span></li>
<li data-step="4" data-name="Data"><span class="badge">4</span>Data<span class="chevron"></span></li>
<li data-step="5" data-name="Infrastructure"><span class="badge">5</span>Infrastructure<span class="chevron"></span></li>
<li data-step="6" data-name="Security"><span class="badge">6</span>Security<span class="chevron"></span></li>
</ul>
我的问题真的是,有没有办法从后面的代码中禁用某些数据步骤?
我找到了一种方法,方法是在后面的代码中声明 int 数组,然后直接在我在 javascript 中初始化数组的地方访问它们。它看起来像这样:
后面的代码:
//Check which steps to disable
if (role.Contains("Data"))
{
disabledSteps = new int[] {5, 5};
}
else if (role.Contains("Infra"))
{
disabledSteps = new int[] {4, 5};
}
else if (role.Contains("Security"))
{
disabledSteps = new int[] { 4, 4 };
}
然后,使用我也在后面的代码中声明的 javascript 序列化器,javascript 看起来像:
var disabledSteps = <%= serializer.Serialize(disabledSteps) %>;
for(var i in disabledSteps){
alert(disabledSteps[i]);
$('#myWizard').wizard('removeSteps', disabledSteps[i], 1);
}