了解Jquery智能向导5的最后一步?

了解Jquery智能向导5的最后一步?,jquery,smart-wizard,Jquery,Smart Wizard,我想在最后一步显示“完成”按钮。我正在使用 我没有看到任何内置的方式来判断我是否在最后一步?我错过什么了吗 $document.readyfunction{ // Toolbar extra buttons var btnFinish = $('<button></button>').text('Finish') .addClass('btn btn-info')

我想在最后一步显示“完成”按钮。我正在使用

我没有看到任何内置的方式来判断我是否在最后一步?我错过什么了吗

$document.readyfunction{

  // Toolbar extra buttons
  var btnFinish = $('<button></button>').text('Finish')
                                   .addClass('btn btn-info')
                                   .on('click', function(){ alert('Finish Clicked'); });
  var btnCancel = $('<button></button>').text('Cancel')
                                   .addClass('btn btn-danger')
                                   .on('click', function(){ $('#smartwizard').smartWizard("reset"); });

  // Step show event
  $("#smartwizard").on("showStep", function(e, anchorObject, stepNumber, stepDirection, stepPosition) {
      $("#prev-btn").removeClass('disabled');
      $("#next-btn").removeClass('disabled');
      if(stepPosition === 'first') {
          $("#prev-btn").addClass('disabled');
      } else if(stepPosition === 'last') {
          $("#next-btn").addClass('disabled');
      } else {
          $("#prev-btn").removeClass('disabled');
          $("#next-btn").removeClass('disabled');
      }
  });

  // Smart Wizard
  $('#smartwizard').smartWizard({
      selected: 0,
      theme: 'arrows',
      transition: {
          animation: 'slide-horizontal', // Effect on navigation, none/fade/slide-horizontal/slide-vertical/slide-swing
      },
      toolbarSettings: {
          toolbarPosition: 'both', // both bottom
          toolbarExtraButtons: [btnFinish, btnCancel]
      }
  });

  // External Button Events
  $("#reset-btn").on("click", function() {
      // Reset wizard
      $('#smartwizard').smartWizard("reset");
      return true;
  });

  $("#prev-btn").on("click", function() {
      // Navigate previous
      $('#smartwizard').smartWizard("prev");
      return true;
  });

  $("#next-btn").on("click", function() {
      // Navigate next
      $('#smartwizard').smartWizard("next");
      return true;
  });


  // Demo Button Events
  $("#got_to_step").on("change", function() {
      // Go to step
      var step_index = $(this).val() - 1;
      $('#smartwizard').smartWizard("goToStep", step_index);
      return true;
  });

  $("#is_justified").on("click", function() {
      // Change Justify
      var options = {
        justified: $(this).prop("checked")
      };

      $('#smartwizard').smartWizard("setOptions", options);
      return true;
  });

  $("#dark_mode").on("click", function() {
      // Change dark mode
      var options = {
        darkMode: $(this).prop("checked")
      };

      $('#smartwizard').smartWizard("setOptions", options);
      return true;
  });

  $("#animation").on("change", function() {
      // Change theme
      var options = {
        transition: {
            animation: $(this).val()
        },
      };
      $('#smartwizard').smartWizard("setOptions", options);
      return true;
  });

  $("#theme_selector").on("change", function() {
      // Change theme
      var options = {
        theme: $(this).val()
      };
      $('#smartwizard').smartWizard("setOptions", options);
      return true;
  });

})

起初我使用了相同的方法,但失败了。 要使其发挥作用:

如果您正在使用Bootstrap 4来隐藏默认按钮,请使用类d-none创建submit按钮。 识别并选择最后一个步骤编号,然后删除d-none类 var btnFinish=$.text'SUBMIT' .addClass'btn btn info sw btn组额外d-none' 。单击,函数{}; //智能向导配置 变量向导=$'smartwizard'。smartwizard{ 已选择:0,//初始选定步骤,0=第一步 主题:'箭头',//向导的主题,除默认主题外,还需要包含相关css 对齐:true,//导航菜单对齐。true/false darkMode:false,//如果主题支持,则启用/禁用暗模式。true/false autoAdjustHeight:true,//自动调整内容高度 cycleSteps:false,//允许循环步骤导航 backButtonSupport:true,//启用后退按钮支持 enableURLhash:false,//启用基于url哈希的步骤选择 过渡:{ 动画:“无”,//导航效果,无/淡入/水平滑动/垂直滑动/滑动摆动 速度:“400”,//转换动画速度 easing://Transition animation easing。没有jQuery easing插件不支持 }, 工具栏设置:{ toolbarPosition:'底部',//无,顶部,底部,两者 工具栏按钮位置:'右',//左、右、中 showNextButton:true,//显示/隐藏下一个按钮 showPreviousButton:true,//显示/隐藏上一个按钮 toolbarExtraButtons:[btnFinish]//要在工具栏上显示的额外按钮,jQuery输入/按钮元素数组 }, 主持人设置:{ anchorClickable:true,//启用/禁用锚导航 enableAllAnchors:false,//激活所有可随时单击的锚 markDoneStep:true,//在导航上添加完成状态 markallpreviousstepsadone:true,//当url哈希选择一个步骤时,前面的所有步骤都标记为完成 removeDoneStepOnNavigateBack:false,//当导航回完成时,活动步骤后的步骤将被清除 enableanchornondonestep:true//启用/禁用已完成步骤导航 }, 键盘设置:{ keyNavigation:true,//启用/禁用键盘导航如果启用,则使用左右键 keyLeft:[37],//左键代码 keyRight:[39]//右键代码 }, lang:{//按钮的语言变量 下一个:'下一个', 上一篇:“上一篇” }, disabledSteps:[],//已禁用数组步骤 errorSteps:[],//突出显示有错误的步骤 hiddenSteps:[],//隐藏的步骤 }; //最后一步的代码 $wizard.onleaveStep,Function,anchorObject,stepNumber,stepDirection{ ifstepDirection==2//这里是最后一步:注意:0,1,2 { $'.sw btn组额外'.removeClass'd-none'; } 其他的 { $'.sw btn组额外'.addClass'd-none'; } }; 智能向导 第一步 步骤2 步骤3
这就是我检测最后一步的方式

    $("#smartwizard").on("leaveStep", function(e, anchorObject, currentStepIndex, nextStepIndex, stepDirection) {
            if(anchorObject.prevObject.length - 1 == nextStepIndex){
                alert('this is the last step'); 
            }else{
                alert('this is not the last step');                
            }
        });