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

175
Vistas
Ajax solo obtiene una respuesta de éxito en Laravel

Mi código ajax siempre recibe una respuesta de éxito incluso en caso de error. Estoy usando Laravel 8.2.

Aquí está JavaScript

 $(".deleteRecord").click(function(){ var id = $(this).data("id"); var token = $("meta[name='csrf-token']").attr("content"); if(confirm('Do you want to delete?')){ $.ajax( { url: "operDel/"+id, type: 'post', cache: false, data: { "id": id, "method": 'post', "_token": token, }, dataType: "json", success: function() { alert('Record is deleted'); // I getting only this alert }, error: function() { alert('You can not delete this record'); } }); } });

Aquí está la ruta

 Route::post('operDel/{id}', '\App\Http\Controllers\OperationController@destroy')->name('operDel')->middleware('auth');

Aquí está el controlador

 public function destroy($id) { $user = User::find($id); if($user->type !== 0) { $user->delete(); return response()->json([ 'success'=>"Record deleted." ]); } else{ return response()->json([ 'error' => "You can not delete this" ]); } }

El controlador se ejecuta sin errores, eliminó el registro de la base de datos cuando $usuario-> escriba. == 0. Pero solo obtengo la alerta dentro de la función de éxito. ¿Cómo puedo mostrar el mensaje de respuesta a la alerta?

about 4 years ago · Juan Pablo Isaza
1 Respuestas
Responde la pregunta

0

Debe enviar códigos de respuesta de error para que AJAX considere que una respuesta ha fallado, por ejemplo:

 public function destroy($id) { $user = User::find($id); if($user->type !== 0) { $user->delete(); return response()->json([ 'success'=>"Record deleted." ]); } else{ return response()->json([ 'error' => "You can not delete this" ], 400); // 400 means bad request } }

Enviar un código de respuesta de más de 400 hará que AJAX comprenda que hubo un error.

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