重置jquery smartwizard

时间:2012-06-12 20:29:44

标签: javascript jquery reset wizard smart-wizard

我正在使用jquery smartwizard 当用户单击名为“create”的按钮时,我的向导将在对话框中打开。当用户再次单击该按钮时,我希望向导重置并启动一个新的向导,但它保持其状态。如果我重新初始化它,那么它会再次添加下一个,上一个和完成按钮并混淆整个向导UI。我有什么想法可以重置智能向导?

3 个答案:

答案 0 :(得分:5)

向导重置公共方法包含在最新的智能向导4中,see the example

$('#smartwizard').smartWizard("reset"); 

调用此函数会将向导重置为初始默认状态。

答案 1 :(得分:3)

根据您使用的对话框,我认为您需要做的是以下内容:

  1. 为隐藏的向导元素创建模板
  2. 打开对话框(onOpen)时,克隆元素并应用智能向导
  3. 关闭对话框后,删除已克隆的元素。
  4. 以下是使用colorbox的演示:

    http://jsfiddle.net/lucuma/Kn2ud/4/

    编辑:由于图书馆从创建时移动,小提琴不再有效,代码如下:

     $("button").colorbox({
                inline: true,
                open: true,
                width: "1000px",
                href: '.inline',
                onClosed: function() {
                    $('.inline .swMain').remove();
                },
                onOpen: function() {
                    $('.template').clone().removeClass('template').appendTo('.inline').smartWizard({
                        transitionEffect: 'slideleft',
                        onFinish: onFinishCallback
                    });
                }
            });
    

答案 2 :(得分:1)

这似乎对我有用(在coffeescript中,但你明白了)。

numSteps = 5
wizardDiv.smartWizard('goToStep', 1)
# disable all the following steps
for i in [2..numSteps]
    wizardDiv.smartWizard('disableStep', i)

清除或保留向导本身的任何数据取决于您。