【发布时间】:2015-12-28 09:18:59
【问题描述】:
我正在为我的向导类型表单使用 jQuery-Steps 插件。现在,当我刷新页面时,我想留在同一个向导上。我该怎么做?
【问题讨论】:
标签: javascript jquery jquery-steps
我正在为我的向导类型表单使用 jQuery-Steps 插件。现在,当我刷新页面时,我想留在同一个向导上。我该怎么做?
【问题讨论】:
标签: javascript jquery jquery-steps
你必须在初始化jQuery.steps时在选项中设置saveState: true。
例如:
$("#example-basic").steps({
headerTag: "h3",
bodyTag: "section",
transitionEffect: "slideLeft",
autoFocus: true,
saveState: true
});
saveState 选项依赖于 jQuery.cookie 插件。参考:https://github.com/rstaib/jquery-steps/issues/86
同样重要的是,saveState 不能在本地文件系统上运行,由于浏览器的限制,它必须从网络服务器提供。
重置状态:
为了在向导完成时重置状态,您必须使用 jQuery 单击第一步链接。然后,您可以隐藏向导并显示自定义消息,以免用户感到困惑。
$("#example-basic").steps({
...
onFinished: function( a ) {
$('#example-basic .steps a:eq(0)').click();
$('#example-basic').hide();
$('#custom-message').show();
}
});
这是我发现在不更改或扩展插件代码的情况下重置状态的唯一方法。
【讨论】:
$.cookie('jQu3ry_5teps_St@te_' + $( this ).data( "uid" ), '' );