Как отправить значение радиокнопки без отправки в laravel? - PullRequest
1 голос
/ 09 июля 2019

Я хочу отправить значение переключателя без отправки.

Это вид

enter image description here

Это код вида

<table>
        <thead>
            <tr>
                <th>No.</th>
                <th>Name</th>
                <th><center>Presence</center></th>
            </tr>
        </thead>
        <tbody>
                @php
                 $i=1;
                @endphp
            <tr>
                <td>{{$i}}</td>
                <td>TEST</td>
                <td>

                    <input type="radio" id="radio1" name="presence" value="Y">
                    <label for="radio1"><font color="#00B01D"><i class="fas fa-check"></i> Yes</font></label>
                    <input type="radio" id="radio2" name="presence" value="N">
                    <label for="radio2"><font color="#FF0000"><i class="fas fa-times"></i> No</font></label>
                </td>

            </tr>
            @php
                $i++;
            @endphp
        </tbody>
    </table>

<script>  
            $(document).ready(function(){  
                    $('input[type="radio"]').click(function(){  
                        var presence = $(this).val();  
                        $.ajax({  
                            url:"http://localhost/admin/presence/add",  
                            method:"POST",  
                            data:{
                                  presence:presence
                                  },  
                            success:function(data){  

                            }  
                        });  
                    });  
            });  
    </script>  

А это контроллер

public function addprespost(Request $request){
        $dataz = [
            'presence' => $request->input('presence'),
        ];
        DB::table('presence')->insert($dataz);
        return redirect('/admin/presence/add');
    }

С моим кодом выше, если я нажимаю кнопку присутствия, ничего не происходит, даже если я проверил в консоли браузера.

Я хочу сделать, если я нажимаю кнопку присутствия Да или Нет, это отправит значение в базу данных.

1 Ответ

3 голосов
/ 09 июля 2019

Добавьте скрытый токен для csrf на вашем входе.

вот так

<input type="hidden" name="_token" value="{{ csrf_token() }}">
<input type="radio" id="radio1" name="presence" value="Y">
<label for="radio1"><font color="#00B01D"><i class="fas fa-check"></i> Yes</font></label>
<input type="radio" id="radio2" name="presence" value="N">
<label for="radio2"><font color="#FF0000"><i class="fas fa-times"></i> No</font></label>

, затем в вашем ajax удалите localhost, только маршрут в порядке и добавьте csrf

$.ajax({  
  url:"/admin/presence/add",  
  method:"POST",  
  data:{
   '_token': $('input[name=_token]').val(),
   'presence':presence
  },  
  success:function(data){  

  }  
});  

Я не знаю, есть ли на радио событие щелчка, вы также можете попробовать этот один для другого варианта, если на радио нажали.

Надеюсь, это поможет!

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...