J'ai passé quelques heures à essayer de faire fonctionner cela aujourd'hui. L'utilisation de la méthode .formwizard("show","new_step")
pour ignorer les étapes n'a pas fonctionné pour moi. Je ne pouvais pas empêcher la transition à l'étape 3 et passer à l'étape 4 de mon formulaire dans la méthode .bind("step_shown",function(){...})
, donc j'ai utilisé l'approche de classe «lien» entrée masquée. J'ai inclus un champ masqué lorsqu'un bouton radio spécifique (à l'étape 2) était sélectionné pour un compte gratuit ou payant, ce qui signifiait que l'étape 3 pouvait être entièrement ignorée (aucun détail de facturation requis pour un compte gratuit). J'ai identifié l'étape pour passer à l'utilisation de la classe "link" sur l'entrée cachée.
DOM a le champ suivant qui est en div de l'étape actuellement visible:
<input type="hidden" id="jump_to_fourth_step" value="fourthStep">
javascript
a les suivantes:
$('input[name="account_type"]').click(function() {
//add "link" class to jump to last step and hide billing fields in summary
if($(this).attr("is_free")==true) {
$("#jump_to_fourth_step").addClass("link");
$(".billing_info").hide();
}
//remove class "link" from input and show billing fields in summary
else {
$('#jump_to_fourth_step').removeClass("link");
$(".billing_info").show();
}
});
Notez que ce code ne fonctionne que sur l'étape 2 depuis le bouton radio est seulement disponible alors. L'étape 3 est sautée avec succès quand "Next" est frappé avec le compte gratuit sélectionné, et si le bouton back est utilisé à l'étape 4, l'utilisateur retourne à l'étape 2. Et si l'utilisateur décide qu'il veut un compte payant et retourne à l'étape 2 pour marquer comme tel, l'entrée cachée est supprimée, ce qui entraîne une nouvelle fois l'étape 3 (et les informations de facturation seront affichées sur la page de résumé).
Ce n'est pas bien documenté, mais le plugin ira à n'importe quelle étape dans l'attribut "valeur" d'une entrée active sur l'étape actuelle une fois que le bouton "Suivant" est cliqué. Comme vu ci-dessus, la valeur est fourthStep
.Et, juste pour être complet, je viens de tester et sauter par-dessus un certain nombre d'étapes est possible, et le bouton retour vous ramènera correctement au bon endroit.
Apprécierait grandement si vous avez un jsfiddle de ceci? – javarebel