一、Ajax的用法
貌似我写的笔记就只能我才能看懂,哈哈,这也许不能怪您没有好的阅读方法,
1、定义 重置密碼 的路由
Route::patch('/usersd/{id}/repw',"UserController@repwd")->name('users.repwd');
Route::patch('test',"UserController@test");
2、返回 json 数据
public function test(){
$user=User::find(request()->id);
$this->authorize('repwd',$user);
$user->password=bcrypt("123456789");
$res = $user->save();
return response()->json([
"flag"=>$res,
"code"=>200,
"msg"=>"成功"
]);
3、传用户ID,定义一个bj类
@can('repwd',$user)
<button type="submit" data-user="{{$user->id}}" class="btn btn-sm btn-danger bj delete-btn"
style="margin-left:10px;">编辑</button>
@endcan
4、引入jQuery,进行响应操作
<script src="https://cdn.jsdelivr.net/npm/jquery@1.12.4/dist/jquery.min.js"></script>
<script>
$(function(){
$(".bj").each(function(i,e){
$(e).click(function() {
// body...
//
console.log(234)
var that = $(this);
var user = $(e).data('user')
$.ajax({
headers:{
//请求验证
'X-CSRF-TOKEN':'{{csrf_token()}}'
},
//提交方式
type:"patch",
//地址
url:"{{url('/test/')}}",
//类型
dataType:"json",
//数据
data:{
id:user
},
//回调函数
success:function(data){
if(data.flag){
alert("成功")
}else{
alert("失敗")
}
}
})
})
})
})
</script>
二、Ajax的用法
return response()->json(需要 json 输出的数据);
return response()->json($data);
1、返回 json 数据
//ajax页面展示
public function test1(){
return view('test1');
}
// ajax的响应
public function test2(){
//查询数据
Member::all();
//json格式响应
// return json_encode($data);
//在 laravel 中框架如果需要响应 json 数据,则写成语法;在 laravel 中布尔值是不能通过return响应输出的
// return response()->json(需要 json 输出的数据);
// return response()->json($data);
// return ['a'=>'我想你了'];
// $res = "wxnl";
return response()->json([
// "flag"=>$res,
"msg"=>"成功了"
]);
// dd($data);
}
}
2、请求响应
<script type="text/javascript">
//jQuery的页面载入事件
$(function(){
//给按钮绑定点击事件
$("#btn").click(function(){
// $.get(地址,[参数对象,回调,期望返回类型]);
// $.post(地址,[参数对象,回调,期望返回类型]);
// $.ajax(obj);参数只有一个,就是参数的对象;
// $.getJSON(地址,[参数对象,回调]);该方法一般用于解决跨域请求;
var wd = $.get('test2',function(data){
// console.log('我想你了');
if(data.msg){
alert("我想你了");
}else{
alert('你莫走');
}
},'json');
// alert('522')
});
});
</script>