Bootstrap Formwizard - 如果每个页面表单提交ajax响应时都阻止滚动到下一步获取错误

Bootstrap Formwizard - 如果每个页面表单提交ajax响应时都阻止滚动到下一步获取错误

问题描述:

我正在使用twitter引导表单向导通过验证在每个页面上提交数据。现在我想阻止,如果Ajax响应在提交数据时出错,请滚动到下一步。下面是我的代码,Bootstrap Formwizard - 如果每个页面表单提交ajax响应时都阻止滚动到下一步获取错误

'onNext': function(tab,navigation,index){ 
    //scrollTo('#wizard',-100); 
    if(index == 1){ 
     var $valid = $('#register_form').valid(); 
     if(!$valid){ 
      $validator.focusInvalid(); 
      return false; 
     } 
     else 
     { 
      var options = $('form[name=register_form]').find('input, textarea, select').filter('.fw1').serialize(); 
      var data = options + '&step=1'; 
      $.ajax({ 
       type: 'POST', 
       url: 'employeeEntryProcess.php', 
       data: data, 
       success: function(data){ 
        this.show(2); 
       }, 
       error: function(){ 
        return false; 
       } 
      }); 
     } 
    } 
}, 

感谢,

其变更后的工作。感谢所有人的帮助。

'onNext': function(tab,navigation,index){ 
     if(index == 1){ 
      var $valid = $('#register_form').valid(); 
      if(!$valid){ 
      $validator.focusInvalid(); 
      return false; 
      } 
      else 
      { 
      var options = $('form[name=register_form]').find('input, textarea, select').filter('.fw1').serialize(); 
      var data = options + '&step=1'; 
      $.ajax({ 
       type: 'POST', 
       url: 'employeeEntryProcess.php', 
       data: data, 
       success: function(response){ 
       $('#wizard').bootstrapWizard('show',1); 
       }, 
       error: function(){ 
       alert('Error'); 
      } 
      }); 
     } 
    } 
    return false; 
}, 

做,这是唯一的办法总是return false所以它不会滚动到下一个步骤自动,然后手动滚动的下一步success AJAX请求的功能(以便它只会在成功时继续进行)。您可能希望在AJAX请求期间放置动画,否则它看起来像什么都没有发生。

+0

我把错误返回false。但它不起作用。 –

+0

@VenkateshAnantharaj不要把错误函数中的返回值设为false,把它放在onNext事件处理函数中。 – lerouche

+0

我试过了,但是它可以防止滚动,即使Ajax响应获得成功。如果我在这里有任何错误,你能否纠正我的代码? –