Empresas
Empleos
  • Sobre nosotros
  • Soluciones
    • Publicación de vacantes
      Publica tu vacante y recibe candidatos calificados en 48h.
    • Evaluación de candidatos
      500+ pruebas técnicas y psicológicas, más anti-fraude.
    • Headhunting
      Búsqueda ejecutiva a la medida de principio a fin.
    • Nómina + EOR
      Dispersión de nómina y EOR en más de 15 países de LATAM.
  • Precios
  • Empleos

0

323
Vistas
¿Cómo obtener la identificación del formulario dentro del bucle en laravel?

En mi web.php

 Route::get('/show', 'StudentsController@show'); Route::POST('/student_delete/{id}', 'StudentsController@delete');

En mi controlador StudentsController.php:

 public function show() { $students = DB::table('students') ->select('*') ->get(); return view('students',['students'=>$students]); } public function delete($id) { DB::table('students')->where('id', '=', $id)->delete(); return back(); }

En mi opinión, estudiantes.blade.php:

 <table> <tr> <th> name</th> <th> tel</th> <th> # </th> </tr> @for($m=0; $m< 10;$m++) <tr> <td><input type="text" value="{{$students[$m]->name}}"/></td> <td><input type="text" value="{{$students[$m]->tel}}"/></td> <form action="/student_delete/{{$students[$m]->id}}" id="{{$students[$m]->id}}"method="POST"> {{ csrf_field() }} <td><button type="submit" class="btn btn-danger remove-tr">-</button></td> </form> </tr> @endfor </table>

El problema está aquí en mi secuencia de comandos para disparar una dulce alerta después de eliminar a un estudiante. ¿Cómo obtengo la identificación del formulario del estudiante que quiero eliminar? este es mi guión:

 <script> $("#How_to_get_the_id_of_form_here").submit(function(e) { e.preventDefault(); var form = this; Swal.fire({ title: 'do you want to continue?', icon: 'question', iconHtml: '؟', confirmButtonText: 'yes', cancelButtonText: 'no', showCancelButton: true, showCloseButton: true }).then((result) => { if (result.isConfirmed) { form.submit(); } else if(!result.isDenied) { console.log(result.isDenied); } }); }); </script>
about 4 years ago · Juan Pablo Isaza
2 Respuestas
Responde la pregunta

0

¿Por qué usar la identificación específicamente cuando puede usar una clase compartida por todas las formas?

 @for($m=0; $m< 10;$m++) ... <form class="student-form-delete" action="/student_delete/{{$students[$m]->id}}" id="{{$students[$m]->id}}"method="POST"> ... </form> ... @endfor

y usa ese nombre de clase en tu javascript

 <script> $(".student-form-delete").submit(function(e) { e.preventDefault(); var form = this; Swal.fire({ ... }); </script>
about 4 years ago · Juan Pablo Isaza Denunciar

0

Resolvería este problema de esta manera: envuelva el script en la función (id - sería como parámetro de función)

 function deleteStudent (id) { e.preventDefault(); var form = $("#" + id); Swal.fire({ title: 'do you want to continue?', icon: 'question', iconHtml: '؟', confirmButtonText: 'yes', cancelButtonText: 'no', showCancelButton: true, showCloseButton: true }).then((result) => { if (result.isConfirmed) { form.submit(); } else if(!result.isDenied) { console.log(result.isDenied); } }); };

Luego configure esta función como onclick="deleteStudent ({{$students[$m]->id}});"

Aquí:

 <form action="/student_delete/{{$students[$m]->id}}" id="{{$students[$m]->id}}"method="POST"> {{ csrf_field() }} <td><button type="submit" class="btn btn-danger remove-tr" onclick="deleteStudent({{$students[$m]->id}});return false;">-</button></td> </form>

O, si la confirmación no funciona, la única forma: coloque el script en el bucle:

 <table> <tr> <th> name</th> <th> tel</th> <th> # </th> </tr> @for($m=0; $m< 10;$m++) <tr> <td><input type="text" value="{{$students[$m]->name}}"/></td> <td><input type="text" value="{{$students[$m]->tel}}"/></td> <form action="/student_delete/{{$students[$m]->id}}" id="{{$students[$m]->id}}"method="POST"> {{ csrf_field() }} <td> <button type="submit" class="btn btn-danger remove-tr">-</button> </td> </form> <script> $("#{{$students[$m]->id}}").submit(function(e) { e.preventDefault(); var form = this; Swal.fire({ title: 'do you want to continue?', icon: 'question', iconHtml: '؟', confirmButtonText: 'yes', cancelButtonText: 'no', showCancelButton: true, showCloseButton: true }).then((result) => { if (result.isConfirmed) { form.submit(); } else if(!result.isDenied) { console.log(result.isDenied); } }); }); </script> </tr> @endfor </table>
about 4 years ago · Juan Pablo Isaza Denunciar
Responde la pregunta
Encuentra empleos remotos

¡Descubre la nueva forma de encontrar empleo!

Top de empleos
Top categorías de empleo
Empresas
Publicar vacante Precios Comercial
Legal
Términos y condiciones Política de privacidad
© 2026 PeakU Inc. All Rights Reserved.
Andres GPT
Recomiéndame algunas ofertas
Necesito ayuda