我最近使用 Jquery Steps 为客户构建了一个葬礼费用计算器工具。
该工具的表单非常复杂,因为许多步骤取决于是否选择了某些表单选项。
我自己通过使用触发单选按钮的“onchange”的“插入”和“删除”方法来解决这个问题。当用户选择发生死亡时,有 7 个步骤。当用户选择没有发生死亡时,有 5 个步骤(见附图)。(请参阅下面的一些示例代码)
这些步骤在索引 4 处插入和删除。如果用户在选项之间来回切换,它将插入 2,然后删除 2,插入 2,然后删除 2,等等。我发现这很简单。
当我需要应用类似条件时,问题就来了。但是,我发现我无法专门针对要插入或删除的索引,因为我无法预测此时有多少步骤(因为它基于用户之前的选择 - 见上文)。
我的javascript知识有限,所以我很茫然。我知道使它工作所需的逻辑,我只是不知道如何实现它。
我想知道如何使用 javascript/jquery 来计算步骤数(以针对最后一步)并针对当前步骤。当然,除非有人可以提出更简单或更好的方法。
我一直在为此绞尽脑汁,任何帮助将不胜感激。谢谢!
<input type="radio" name="deathOccurred" rel="death-occured-yes" value="Yes" class="required" onclick="calculateTotal()" onchange="$('#estimator-form').steps('insert', 4, {
title: 'Clergy/Celebrant',
content: '<STEP HTML HERE>'
});
$('#estimator-form').steps('insert', 5, {
title: 'Other options',
content: '<STEP HTML HERE>'
/> Yes
<input type="radio" name="deathOccurred" rel="death-occured-no" value="No" checked onclick="calculateTotal()" onchange="$('#estimator-form').steps('remove', 5, {}); $('#estimator-form').steps('remove', 4, {});" /> No