2017-11-03 10 views
0

私はかなりばかげた質問をしています。しかし、私はこの言語に慣れず、自分自身のブートストラップを学んでいます。私は実際には現在3日間ほとんど検索しており、解決策を見つけることができませんでした。私はここに記載された方法に従っていますが、まだ解決することはできません。http://formvalidation.io/examples/getting-notified-field-being-validated/基本的には、リモート検証が実行中に「処理中...」のようなものを表示したいのですが、何らかの理由でそれを実行できません。親愛なるサイト管理者、申し訳ありませんが、これは重複した質問です。しかし、私もここにJQuery validation "remote" method response waiting message提供される解決策に従ってきたが...それを周り:(ブートストラップ:リモート検証処理中にメッセージを表示

マイコード...

$(document).ready(function(){ 

$("#registerform").bootstrapValidator({ 
    //live: 'enabled', 
    onkeyup: false, 
    feedbackIcons: { 
     valid: 'fa fa-thumbs-o-up', 
     invalid: 'fa fa-remove', 
     validating: 'fa fa-circle-o-notch fa-spin' 
    }, 

    // Specify the validation rules 
    fields: { 
     name: { 
      validators: { 
       stringLength: { 
        min: 6, 
       }, 
       notEmpty: { 
        message: 'You are required to fill your full name' 
       } 
      } 
     }, 
     username: { 
      threshold: 6, 
      validators: { 
       stringLength: { 
        min: 6, 
       }, 
       notEmpty: { 
        message: 'You are required to fill a username of your choice' 
       }, 
       regexp: { 
        regexp: /^[a-zA-Z0-9_\.]+$/, 
        message: 'The username can only consist of alphabetical, number, dot and underscore' 
       }, 
       remote: { 
        url: '/remote.php', 
        type: 'POST', 
        message: 'Oops! That username is already taken', 
        delay: 2000 
       }, 
      } 
     }, 
     email: { 
      validators: { 
       notEmpty: { 
        message: 'Please supply your email address' 
       }, 
       emailAddress: { 
        message: 'Please supply a valid email address' 
       } 
      } 
     }, 
     password: { 
      validators: { 
       stringLength: { 
        min: 8, 
       }, 
       notEmpty: { 
        message: 'Please set a password' 
       }, 
       regex: /^(?=.*[a-z])(?=.*[A-Z])(?=.*[0-9])(?=.*[[email protected]#\$%\^&\*])(?=.{8,})/, /* Minimum eight characters, at least one letter, one number and one special character: */ 
       callback: { 
        callback: function(value, validator, $field) { 
         var password = $field.val(); 
         if (password == '') { 
          return true; 
         } 

         var result = zxcvbn(password), 
         score = result.score, 
         message = result.feedback.warning || 'The password is weak'; 

         // Update the progress bar width and add alert class 
         var $bar = $('#strengthBar'); 
         switch (score) { 
          case 0: 
           $bar.attr('class', 'progress-bar progress-bar-danger').css('width', '1%'); 
           break; 
          case 1: 
           $bar.attr('class', 'progress-bar progress-bar-danger').css('width', '25%'); 
           break; 
          case 2: 
           $bar.attr('class', 'progress-bar progress-bar-danger').css('width', '50%'); 
           break; 
          case 3: 
           $bar.attr('class', 'progress-bar progress-bar-warning').css('width', '75%'); 
           break; 
          case 4: 
           $bar.attr('class', 'progress-bar progress-bar-success').css('width', '100%'); 
           break; 
         } 

         // We will treat the password as an invalid one if the score is less than 3 
         if (score < 3) { 
          return { 
           valid: false, 
           message: message 
          } 
         } 
         return true; 
        } 
       } 
      } 
     }, 
     passwordConfirm: { 
      validators: { 
       notEmpty: { 
        message: 'Please set a password' 
       }, 
       identical: { 
        field: 'password', 
        message: 'Passwords do not match' 
       }, 
       different: { 
        field: 'username', 
        message: 'The password cannot be the same as username' 
       } 
      } 
     }, 

.on('status.field.bv', function(e, data) { 
    // Change username to your field name 
    if (data.field === 'username' && data.validator === 'remote') { 
     (data.status === 'VALIDATING')? $('#processing').show(): $('#processing').hide(); 
    } 
}); 

を})私の頭を取得できませんでした。

もう1つのことは、アイコンが回転円に変わるユーザ名フィールドの検証が実行されている間です。ただし、パスワードの確認で誰かが入力を開始すると、有効なアイコンがクロスバーに変わります。これは、おそらく '異なる'チェックが適所に置かれているためです。これを防ぐ方法はありますか?

答えて

0

私はあなたがメッセージを表示するには、このブートストラップを使用することができる最高はあなたが

var dialog = bootbox.dialog({ 
    title: 'working', 
    message: '<p><i class="fa fa-spin fa-spinner"></i> Loading...</p>' 
}); 
dialog.init(function(){ 
    setTimeout(function(){ 
     dialog.find('.bootbox-body').html('All work is done!'); 
    }, 3000); 
}); 

のようなものを使用することができますし、あなただけとしてそれを設定することにより、入力されたパスワードの変更を防ぐことができますbootbox

だと思います読む。

希望します。

+0

Braianに感謝します。このコードをどこに追加すればいいですか?私は間違ったことをしていると確信しています。 – Rahul

+0

私はあなたがそれを使いたいと思っていません –

+0

私の悪い、私は特定のポイントを言及していなかった...基本的には、ユーザー名の可用性がチェックされている間(つまり、状態を確認している) 'リモート'メソッドを使用して、このメッセージを表示 – Rahul

関連する問題