Thinkphp ajax非同期コミット方法のまとめ

1671 ワード

Thinkphp ajaxは$を使用する.get関数はバックグラウンドにコミットされ,バックグラウンド処理が完了するとフロントエンドデータに戻り,表示される.
パスワードの変更を例にhtmlコードを見てみましょう
  • :
  • :
  • :
  • JSコード
    
    //          
    	$(function(){
    		var error=new Array();
    		$('input[name="opw"]').blur(function(){// input[name="opw"]'       
    			var pw=$(this).val();
    			$.get('__URL__/checkpw',{'pw':pw},function(data){//  $.get    
    				if(data =="1"){//              
    					error['pw']=1;
    					}
    				else{
    					$('input[name="opw"]').after('<div id="checkpw">       </div>');
    					error['pw']=0;
    					}
    				})
    			});
    			$('input[name="opw"]').focus(function(){//       #checkpw
    				$('#checkpw').remove();
    				});
    			
    		})
    

    バックグラウンドPHPコード
     public function checkpw(){
    			$opw=I('get.pw','');//         					
    			$uid= $_SESSION['id'];
    			$user=D('users');
    			$user=$user->where(array('id'=>$uid))->find();
    			$dbpw=$user['password'];//         
    			if(md5($opw)==$dbpw){//                 ,  1
    					 echo '1';
    					}
    				else{//     0
    					echo "0";
    					}
    		}

    ユーザーが元のパスワード入力ボックスにデータベースと一致しないパスワードを入力し、入力ボックスがフォーカスを失うと、元のパスワードが正しくないことをユーザーに提示します.