Empresas
Empregos
  • Sobre nós
  • Soluções
    • Publicação de vagas
      Publique sua vaga e receba candidatos qualificados em 48h.
    • Avaliações de candidatos
      Mais de 500 testes técnicos e psicológicos, mais anti-fraude.
    • Headhunting
      Busca executiva personalizada do início ao fim.
    • Folha de Pagamento + EOR
      Dispersão de folha e EOR em mais de 15 países da LATAM.
  • Preços
  • Empregos

0

426
Visualizações
Laravel 7: actualizar el valor de la casilla de verificación sin formulario o botón

Estoy atascado con mi proyecto, por favor ayuda...

Esta es la situación: En mi proyecto tengo que asignar un profesor para dar permiso para calificar a los estudiantes, porque un grupo puede tener 2 o más profesores, pero solo uno tiene que tener permiso para calificar, entonces... Agregué una columna en mi tabla 'maestros' en la base de datos con el nombre 'grado' de tipo booleano. Y en mi opinión agregué un checkbox... ¿Cómo cambio el valor de un checkbox sin usar ningún formulario o botón para activar la acción y activar el checkbox en el profesor que va a tener permiso para calificar? Y este valor también debe actualizarse en la base de datos.

  • Esta es mi vista...
 <!--teachers--> <table class=" table table-sm table-striped table-bordered "> <thead class="text-white bg-primary"> <tr> <th>@lang('show.Identifier')</th> <th>@lang('show.email')</th> <th>@lang('show.grade')</th> <th>@lang('show.delete')</th> </tr> </thead> <tbody class="small text-center"> @foreach ($group->teachers as $teacher) <tr> <td >{{$teacher->Identifier}} </td> <td >{{$teacher->email}} </td> <td> <input id="active" {{$teacher->grade == 1 ?'checked':''}} type="checkbox" name="grade" value="1"> </td> <td> <form method="post" action="{{url('Groups/Disenroll/'.$group->idGroup.'?idTeacher='.$teacher->idTeacher)}}"> {{csrf_field()}} <button type="submit" class="btn btn-sm btn-outline-danger" > <i class="material-icons small" >call_split</i></button> </form> </td> </tr> @endforeach </tbody> </table>

Y esta es una imagen de la mesa, si te sirve...

maestros

about 4 years ago · Juan Pablo Isaza
1 Respostas
Responde à pergunta

0

Creo que puedes usar algo como JQuery para esto.

En primer lugar, puede agregar una clase de clase de alternancia a su casilla de verificación

 <input class="active toggle-class" {{$teacher->grade == 1 ?'checked':''}} type="checkbox" name="grade">

Y en segundo lugar, asegúrese de tener una forma de realizar un seguimiento de quién está haciendo las calificaciones.

Agregue data-id="{{ $teacher->Identifier}}" en su casilla de verificación

 <input data-id="{{ $teacher->Identifier}}" class="active toggle-class" {{$teacher->grade == 1 ?'checked':''}} type="checkbox" name="grade">

En tu web.php agrega una nueva ruta

 Route::get('/path/to/updateGrader/status', [App\Http\Controllers\MyController::class, 'updateGraderStatus']);

Agregue el siguiente código donde se encuentra su casilla de verificación

 $('.toggle-class').on('change',function(){ let status = $(this).prop('checked') == true ? true : false; let grader_id = $(this).data('id'); $.ajax({ type:'GET', dataType:'json', url:'/path/to/updateGrader/status', // add your earlier created route here data:{'grade': status, 'grader_id': grader_id}, success: function(data){ console.log('success'); } }); });

En su controlador, MyController en nuestro caso crea una nueva función

 public function updateGraderStatus(Request $request) { $grader = MyModel::find($request->grader_id); $grader->grade = $request->grade; $grader->save(); }

Por favor, hágamelo saber si esto le ayuda. No lo probé, pero creo que así es como lo harías.

about 4 years ago · Juan Pablo Isaza Relatório
Responde à pergunta
Encontrar trabalhos remotos

Descubra a nova forma de encontrar um emprego!

melhores empregos
Principais categorias de trabalho
Empresas
Postar vaga Preços Comercial
Jurídico
Termos e Condições Política de privacidade
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomende algumas ofertas para mim
Preciso de ajuda