一:利用ajax请求数据:
可以在common.php 公共文件写一个自定义show方法 用来返回json数据;
//返还的json数据 function show($status,$msg,$data=[]){ $result = [ 'status' => $status, 'msg' => $msg, 'data' => $data ]; exit(json_encode($result)); }
后台例如:
public function login() { if (request()->isAjax()) { $userinfo = input('post.'); $cod = input('cod'); if (!captcha_check($cod)) { return show('-1', '验证码错误'); } else { $admins = model('Admin'); $state = $admins->login($userinfo); if ($state == 1) { return show('1','登陆成功'); } elseif ($state == 2) { return show('2','账号或密码错误'); } else { return show('3','用户不存在'); } } } return view(); }
前台:
<script type="text/javascript"> function ajaxPost(){ var formData = $("#myform").serialize(); //获取表单中的值 //serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,这个是jquery提供的方法 $.ajax({ type:"post", async:false, url:"{:url('Admin/login')}", data:formData,//这里data传递过去的是序列化以后的字符串 dataType:'json', 回调的数据默认以json的格式。或者xml success:function(data){ console.log(data); if (data.status==-1){ $("#content").append(data.msg); } //其他逻辑处理 } }); } </script>