laravel ajax时间与关键字搜索、即点即改、批量删除

来源:互联网 发布:中小型企业网络规划 编辑:程序博客网 时间:2024/06/05 17:21

1、创建一个from表单

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <script src="{{asset('jquery.1.12.js')}}"></script></head><body>    <form action="{{url('login/select')}}" method="post">    <input type="hidden" name="_token" value="{{csrf_token()}}">        <table>            <tr>                <td>商品名</td>                <td><input type="text" name="name[]"></td>            </tr>            <tr>                <td>价格</td>                <td><input type="text" name="price[]"></td>            </tr>            <tr>                <td><input type="button" value="+"></td>                <td><input type="submit" value="提交"></td>            </tr>        </table>            </form></body></html><script>    $('input[type="button"]').click(function(){        //alert(1212);        var str="<tr><td>商品名</td><td><input type='text' name='name[]'/></td></tr><tr><td>价格</td><td><input type='text' name='price[]'/></td></tr>";        $(this).parents('tr').before(str);    })</script>



2、控制器

<?phpnamespace App\Http\Controllers;use Illuminate\Http\Request;use DB;use Session;use App\Http\Requests;use App\Http\Controllers\Controller;class Indexcontroller extends Controller{    /**     * Display a listing of the resource.     *     * @return \Illuminate\Http\Response     */    public function index()    {        return view('login');    }    /**     * Show the form for creating a new resource.     *     * @return \Illuminate\Http\Response     */    public function add(Request $request)    {        $username=$request->input('username');        $pwd=$request->input('pwd');        $res=DB::table('user')->insert(['username'=>$username,'pwd'=>$pwd]);        if($res)        {               Session::set('username',$username);            Session::get('username');            return redirect('login/from');        }        else        {            echo "登录失败";        }    }    /**     * Store a newly created resource in storage.     *     * @param  \Illuminate\Http\Request  $request     * @return \Illuminate\Http\Response     */    public function sou(Request $request)    {        $search=$request->input('search');        $start=$request->input('start');        $end=$request->input('end');        //echo $end;        $where='1';        //模糊查询        if(!empty($search)){             $where.=" and name like '%$search%'";        }        //  print_r($where);            //时间段        if(!empty($start)){            if(!empty($end)){                $where.=" and time  between  '$start' and '$end'";            }        }         $arr = DB::select("select * from shangp where $where");                 //关键字变红        // foreach($arr as $key=>$val){        //     $arr[$key]->name=str_replace($search,"<font color='red'>$search</font>",$val->name);        // }        //print_r($arr);        return view('index',['arr'=>$arr]);        //print_r($results);            }    /**     * Store a newly created resource in storage.     *     * @param  \Illuminate\Http\Request  $request     * @return \Illuminate\Http\Response     */    public function store()    {        return view('from');    }    /**     * Display the specified resource.     *     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function select(Request $request)    {        $name=$request->input('name');        //print_r($name);        $price=$request->input('price');        //print_r($price);die;        // $name='';        // $price='';        if($name[0]=='' || $price[0]=='')        {            echo '名称或价格不能为空';        }        else        {            foreach ($name as $key => $value) {                $arr[]=['name'=>$value,'price'=>$price[$key]];            }            //print_r($arr);die;            $res=DB::table('shangp')->insert($arr);            //print_r($res);die;            $data=DB::table('log')->insert(['username'=>Session::get('username'),'content'=>"添加了数据",'time'=>date('y-m-dh:i:s',time())]);            if($res)            {                return redirect('index/show');            }            else            {                echo "添加失败";            }        }           }    /**     * Show the form for editing the specified resource.     *     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function show()    {        $arr=DB::table('shangp')->get();        //print_r($arr);die;        return view('list',['arr'=>$arr]);    }    /*    **     * Show the form for editing the specified resource.     *     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function delete(Request $request)    {        $id=$request->input('id');        //echo $id;die;                $res=DB::table('shangp')->where('id',$id)->delete();         $data=DB::table('log')->insert(['username'=>Session::get('username'),'content'=>"删除了一条id为$id",'time'=>date('y-m-dh:i:s',time())]);        if($res)        {            return redirect('index/show');        }        else        {            echo "删除失败";        }    }    /**     * Update the specified resource in storage.     *     * @param  \Illuminate\Http\Request  $request     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function jd(Request $request)    {       $id=$request->input('id');       //echo $id;       $a=$request->input('a');       //echo $val;\       if(is_numeric($a))       {         DB::table('shangp')            ->where('id',$id)            ->update(['price' =>$a]);                  }       else       {              DB::table('shangp')            ->where('id',$id)            ->update(['name' =>$a]);       }           }    /**     * Update the specified resource in storage.     *     * @param  \Illuminate\Http\Request  $request     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function ps(Request $request)    {        $id=$request->input('id');        $str= rtrim($id,',');        $data=explode(',',$str);        //print_r($data);die;        $res=DB::table('shangp')->whereIn('id',$data)->delete();        $data=DB::table('log')->insert(['username'=>Session::get('username'),'content'=>"批量删除了id为$id",'time'=>date('y-m-dh:i:s',time())]);        //print_r($data);        //echo $id;die;        //$str        // foreach ($id as $key => $value) {        //     $arr[]=['id'=>$value];        //     // $res=DB::table('shangp')->where('value',$value)->delete();        // }        //print_r($arr);        //$res=DB::table('shangp')->where('id',$id)->delete();    }    /**     * Remove the specified resource from storage.     *     * @param  int  $id     * @return \Illuminate\Http\Response     */    public function destroy($id)    {        //    }}



3、表单展示

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <script src="{{asset('jquery.1.12.js')}}"></script></head><body><div id="div">关键字<input type="text" id="search"> <input type="text" id="start"><input type="text" id="end"> <button id="sou">搜索</button>    <table border="1">        <tr>            <td>ID</td>            <td>名称</td>            <td>价格</td>            <td>时间</td>            <td>操作</td>        </tr>        @foreach ($arr as $v)        <tr>            <td><input type="checkbox" name="subChk" value="{{$v->id}}"></td>            <td value="{{$v->id}}"><span class="click">{{$v->name}}</span></td>            <td value="{{$v->id}}"><span class="click">{{$v->price}}</span></td>            <td>{{$v->time}}</td>            <td><a href="{{url('index/del')}}?id={{$v->id}}">删除</a></td>        </tr>        @endforeach    </table>        <!-- <div id="fpage">数据加载中...</div -->    <button id="plsc">批量删除</button></div></body></html><script type="text/javascript">     $("#sou").click(function () {                var search = $("#search").val();                var start = $("#start").val();                var end = $("#end").val();                //alert(search);                var token="{{csrf_token()}}";                $.ajax({                    type: "post",                    url: "{{url('index/sou')}}",                    data: "search=" + search+"&start="+start+"&end="+end+"&_token="+token,                    success: function (data) {                       //alert(data)                        $('#div').html(data);                    }                });            }); //        /* 批量删除 */        $("#plsc").click(function() {        // 判断是否至少选择一项        var checkedNum = $("input[name='subChk']:checked").length;        if(checkedNum == 0) {        alert("请选择至少一项!");        return;        }        // 批量选择        if(confirm("确定要删除所选项目?")) {        var checkedList = new Array();        $("input[name='subChk']:checked").each(function() {        checkedList.push($(this).val());        });        //alert(checkedList);        var token="{{csrf_token()}}";        $.ajax({        type: "GET",        url: "{{url('index/ps')}}",        data: {'id':checkedList.toString(),'token':token},         success: function(data) {                    alert('删除成功')                }            });        }    });      $(document).on("click", ".click", function () {              var con = $(this).html();              $(this).parent().html("<input type=\"text\" value=" + con + " id='aa' />");               $("input").focus();            //alert(str);            $(document).on("blur", "#aa", function () {                  var a = $("#aa").val();                var id=$(this).parent().attr('value');                $(this).parent().html("<span class=\"click\">" + a + "</span>");                //alert(id);                var token="{{csrf_token()}}";                $.ajax({                     type:"POST",                     url:"{{url('index/jd')}}",                     data:"id="+id+"&a="+a+"&_token="+token,                     success:function(data){                               //根据返回值进行处理                               alert('修改成功');                     }                   });            });          });  </script>



4、搜索后表单

<!DOCTYPE html><html lang="en"><head>    <meta charset="UTF-8">    <title>Document</title>    <script src="{{asset('jquery.1.12.js')}}"></script></head><body><div id="div">关键字<input type="text" id="search"> <input type="text" id="start"><input type="text" id="end"> <button id="sou">搜索</button>    <table border="1">        <tr>            <td>ID</td>            <td>名称</td>            <td>价格</td>            <td>时间</td>            <td>操作</td>        </tr>        @foreach ($arr as $v)        <tr>            <td><input type="checkbox" name="subChk" value="{{$v->id}}"></td>            <td value="{{$v->id}}"><span class="click">{{$v->name}}</span></td>            <td value="{{$v->id}}"><span class="click">{{$v->price}}</span></td>            <td>{{$v->time}}</td>            <td><a href="{{url('index/del')}}?id={{$v->id}}">删除</a></td>        </tr>        @endforeach    </table>        <!-- <div id="fpage">数据加载中...</div -->    <button id="plsc">批量删除</button></div></body></html><script type="text/javascript">     $("#sou").click(function () {                var search = $("#search").val();                var start = $("#start").val();                var end = $("#end").val();                //alert(search);                var token="{{csrf_token()}}";                $.ajax({                    type: "post",                    url: "{{url('index/sou')}}",                    data: "search=" + search+"&start="+start+"&end="+end+"&_token="+token,                    success: function (data) {                       //alert(data)                        $('#div').html(data);                    }                });            }); //        /* 批量删除 */        $("#plsc").click(function() {        // 判断是否至少选择一项        var checkedNum = $("input[name='subChk']:checked").length;        if(checkedNum == 0) {        alert("请选择至少一项!");        return;        }        // 批量选择        if(confirm("确定要删除所选项目?")) {        var checkedList = new Array();        $("input[name='subChk']:checked").each(function() {        checkedList.push($(this).val());        });        //alert(checkedList);        var token="{{csrf_token()}}";        $.ajax({        type: "GET",        url: "{{url('index/ps')}}",        data: {'id':checkedList.toString(),'token':token},         success: function(data) {                    alert('删除成功')                }            });        }    });      $(document).on("click", ".click", function () {              var con = $(this).html();              $(this).parent().html("<input type=\"text\" value=" + con + " id='aa' />");               $("input").focus();            //alert(str);            $(document).on("blur", "#aa", function () {                  var a = $("#aa").val();                var id=$(this).parent().attr('value');                $(this).parent().html("<span class=\"click\">" + a + "</span>");                //alert(id);                var token="{{csrf_token()}}";                $.ajax({                     type:"POST",                     url:"{{url('index/jd')}}",                     data:"id="+id+"&a="+a+"&_token="+token,                     success:function(data){                               //根据返回值进行处理                               alert('修改成功');                     }                   });            });          });  </script>


0 0
原创粉丝点击