public function login()
{
$username = input('username');
$password = input('password');
if(request()->isAjax())
{
$login=new Log;
$status = $login->login($username,$password);
if($status == 1)
{
return json('登陆成功!');
return $this->success('登陆成功!','index/index');
}
elseif($status == 2)
{
return json('密码错误!');
}
elseif($status == 3)
{
return json('该账号没有注册');
}
}
else
{
return $this->fetch('login');
}
}前端代码<!doctype html>
<html>
<head>
<meta charset="UTF-8">
<title>后台登录</title>
<script type="text/javascript" src="__PUBLIC__/static/admin/js/jquery.min.js"></script>
<link href="__PUBLIC__/static/admin/css/admin_login.css" rel="stylesheet" type="text/css" />
<script>
function ajaxPost(){
var formData = $("#myform").serialize();
$.ajax({
type:"post",
url:"{:url('Admin/login/login')}",
data:formData,//这里data传递过去的是序列化以后的字符串
success:function(data){
$("#content").prepend(data);//获取成功以后输出返回值
}
});
}
</script>
</head>
<body>
<div class="admin_login_wrap">
<h1>后台管理</h1>
<div class="adming_login_border">
<div class="admin_input">
<form action="" method="post" id="myform">
<ul class="admin_items">
<li>
<label for="user">用户名:</label>
<input type="text" name="username" value="admin" id="username" size="35" class="admin_input_style" />
</li>
<li>
<label for="pwd">密码:</label>
<input type="password" name="password" value="admin" id="password" size="35" class="admin_input_style" />
</li>
<li>
<input type="submit" tabindex="3" value="提交" id="sub" class="btn btn-primary" action="ajaxPost()"/>
</li>
</ul>
</form>
</div>
</div>
</div>
<div id="content"> asdf
</div>
</body>a
</html>之前有一个我觉得类似的例子,这是照着那个写的参考的demo的控制器部分
public function test()
{
$username = input('username');
$password = input('password');
if(request()->isAjax())
{
if($username == '123'){
return json("ajax成功!".$username."---".$password);
}else{
return json("你输出的是其他值:".$username."---".$password);
}
}
else{
return $this->fetch('test');
}
}参考的demo的前端部分<html>
<head>
<script src="__PUBLIC__/static/admin/js/jquery-1.10.2/jquery.min.js"></script>
<!-- <script> -->
<!-- function ajaxPost(){ -->
<!-- var data = $("#myform").serialize(); -->
<!-- $(document).ready(function(){ -->
<!-- $("button").click(function(data){ -->
<!-- $("#content").load("{:url('Admin/map/test')}",$("#myform").serialize()); -->
<!-- }); -->
<!-- }); -->
<!-- } -->
<!-- </script> -->
<script>
function ajaxPost(){
var formData = $("#myform").serialize();
//serialize() 方法通过序列化表单值,创建 URL 编码文本字符串,这个是jquery提供的方法
$.ajax({
type:"post",
url:"{:url('Admin/map/test')}",
data:formData,//这里data传递过去的是序列化以后的字符串
success:function(data){
$("#content").prepend(data);//获取成功以后输出返回值
}
});
}
</script>
</head>
<body>
<form id="myform"><!--这里给表单起个id用于获取表单并序列化-->
<input type="text" name="username" value="123"/>
<input type="text" name="password" value="123" />
</form>
<button onclick="ajaxPost()">Ajax</button>
<!-- <button>获取外部内容</button> -->
<div id="content"> asdf
</div>
</body>
</html> 最佳答案