1. import the Jquery lib;
<script language="JavaScript" src="./app/Common/Common/js/jquery-3.0.0.min.js"></script>
2. Create and import the new created js file : validateusername.js
2.1 import :
<script language="JavaScript" src="./app/Home/View/public/js/validateusername.js"></script>
2.2 Code of validateusername.js
$(document).ready(function(){
$("#username").blur(function(){
var username = $(this).val();
var url = "/practice/index.php/Home/register/check_username";
$.post(url,{username:username},function(str){
if(str == '1'){
$("#username1").html("already registered");
}else{
$("#username1").html("ok for register");
}
});
});
});
Note:
a. url would be required to input for triggering the controller action with method, mistake here: '}'
b. #username1 refers to the span going to insert within html. refer following:
<input class="form-control" placeholder="您的名称" required="required" id="username" minlength="3" type="text" name="username" />
<span id="username1"></span>
3. TP function for validate whether username already registered or not
public function check_username(){
$user = M('User');
$post_array=array();
$post_array['username']= isset($_POST['username'])&&trim($_POST['username'])?$_POST['username']:0;
$post_array['password']= isset($_POST['password'])&&trim($_POST['password'])?$_POST['password']:0;
$post_array['email']= isset($_POST['eail'])&&trim($_POST['email'])?$_POST['email']:0;
$post_array['email']= $_POST['email'];
$map['username']=$_POST['username'];
$map['email']=$_POST['email'];
$map['_logic']='OR';// OR relationships
$result=$user->where($map)->select();
if($result!=null){
exit('1');
}else {
exit('0');
}