2017-03-10 3 views
1

欲しいものは、ぼかし関数で検証されなければならず、フォームは "username already exists"の場合には送信してはいけません。 例 - 私は、ユーザ名が片ボケ機能ここでjqueryで停止フォームを送信するエラーを表示するためのぼかしajax

にAJAXで終了するときに提出を停止する必要がhttps://accounts.google.com/SignUp?service=mail&continue=https%3A%2F%2Fmail.google.com%2Fmail&hl=en は、私のJSコードである

(function ($) { 
    var u_error; 
    console.log('data'); 
    $('#username').blur(function() { 
     if($("#username").val() != '') { 
      $.ajax({ 
       url: "<?php echo base_url('welcome/un_availability') ?>", 
       data: 'un=' + $("#username").val(), 
       type: "POST", 
       success: function (data) { 
        console.log(data); 
        if (data == 1) { 
         $(".user_availability_status").css('color', 'red').text('Username already exsists'); 
         //return true; 
         u_error = 1; 
        } else { 
         //return true; 

         $(".user_availability_status").css('color', 'green').text('Username Available.'); 
         //$('#myform').submit(); 
         u_error = 0; 
        } 
       }, 
       error: function() { 
       alert('Error while request..'); 
       } 
      }); 


     } 

    });    

    $('#myform').submit(function(e) { 
     if(u_error == 1) { 
      e.preventDefault(); 
     } 
    }); 
}(jQuery)); 

HTML:以下のような

<form id="myform" method="post"> 
<input type="text" name="username" id="username" required> 
<span class="user_availability_status"></span> 
<input type="password" name="pas" required> 
<input type="submit" name="r_sub" id="mysub"> 
</form> 

答えて

0

変更: -

$(".user_availability_status").css('color','red').html('Username already exists'); 

および

$(".user_availability_status").css('color','green').html('Username Available.'); 

そして

$('#myform').submit(function(e) { 
    if($(".user_availability_status").html() == 'Username already exists') { 
     e.preventDefault(); 
     return false; 
    } 
}); 
関連する問題