как фильтровать данные по нажатию кнопки и отображать на той же вкладке без перезагрузки страницы - PullRequest
0 голосов
/ 05 июня 2019

У меня есть три вкладки. в одном я хочу загрузить данные из базы данных и иметь фильтр по электронной почте. когда я нажимаю кнопку, я хочу, чтобы в таблице на той же вкладке отображались данные только пользователя с адресом электронной почты.

это мой сценарий на виду

<script>
    jQuery('.savedata').click(function (e) {
        e.preventDefault();

        jQuery.post('/gettabdata', {
            _token: window.csrf_token,
            email: jQuery('input[name="email"]').val()
        } 
        function (data) {
            var $tableBody = jQuery('#filtered-data tbody');
            $tableBody.html('');

            jQuery.each(data, function (i) {
                $tableBody.append(
                    '<tr>' +
                        '<td>' + data[i].User_id + '</td>' +
                        '<td>' + data[i].email + '</td>' +
                        '<td>' + data[i].status + '</td>' +
                        '<td>' + data[i].date + '</td>' +
                        '<td>' + data[i].time + '</td>' +

                    '</tr>'
                ); 
            });
        }

        'json');
    });
</script> 

это мой контроллер для вкладки, в которой я хочу увидеть результат еще {

        $user = \Auth::guard('api')->user();
        $post = $request->all();
        $email = $request->input('email');
        $cond = ' 1=1 ';
        if(!empty($post['email'])){
        $cond .= " and email like '".$post['email']."'";
        }
        $qry = 'SELECT User_id, email, status, date, time FROM profile WHERE  '.$cond.' ';
        $data = DB::select($qry);


        $response = $this->analysis($post);
        //$getdata=$this->userdata($post);

        $data = [
        'data'=>$data,
        'response'=>$response,
        //'getdata'=>$getdata

        ];

            return response()->json($data);


    }

1 Ответ

1 голос
/ 05 июня 2019

попробуйте

Route
Route::get('/get-record-by-email','Controller@getRecord');


//controller
    public function getRecord(Request $request)
    {
    $emailid= Input::get('email_id');

    $jsondata= DB::table(your-table)->where('email',$emailid)->get();
    return response()->json($jsondata);

    }


    //Ajax call
    $("#btnClick").change(function(e){

            //console.log(e);
            var email_id = e.target.value;

            //alert(email_id);
            //$token = $("input[name='_token']").val();
            //ajax
            $.get('/get-record-by-email?email_id='+email_id, function(data){
            $('#filterdata').empty();
            //console.log(data);
            $.each(data, function(index, obj){
            $('#filterdata').append( '<tr>'

                                          '<td>' + obj.User_id + '</td>' +
                                          '<td>' + obj.email + '</td>' +
                                          '<td>' + obj.status + '</td>' +
                                          '<td>' + obj.date + '</td>' +
                                          '<td>' + obj.time + '</td>' +

                                      '</tr>' );
              });
            })
        });
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...