Bonjour,
J'utilise Codeigniter et j'essaie d'afficher les erreurs d'un formulaire depuis ajax.
Dans mon controlleur je renvoie les erreurs de cette facon ;
Puis dans ma requete Ajax ;
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4 if ($this -> input -> is_ajax_request()) { $message = array('errors' => validation_errors()); echo json_encode($message); exit ;
Mon problème vient du fait que "message.errors" ne me retourne rien. Mais si je demande juste "message" il me retourne bien les erreurs. Mais me fait planté le reste si il n'y a pas d'erreurs.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20 $('#form').submit(function(e) { e.preventDefault(); $('.error').hide(); var data = $(this).serialize(); url = $(this).attr('action'); $.ajax({ type : 'POST', url : url, data : data, datatype : "json", success : (function(message) { if(message.errors) { console.log(message.errors); } else { url = $('.current_url').attr('href'); location.href = url; } }) }) })
J'ai bien réussi a extraire les erreurs en utilisant la fonction eval(). Mais elle me fait aussi planter le reste de mon script si il n'y a pas d'erreur.
Merci par avance pour votre aide.
Partager