Bonjour à tous!
Cela fait 1 semaine que je bloque pour faire une validation ajax sur un formulaire. J'avais trouvé une solution qui fonctionne sur cake1.3 mais impossible de la faire fonctionner sur la version 2
Voici ce que j'ai dans views/messages/index.ctp :
[code]echo $this->Form->input('name', array('id'=>'name'));[/code]
Dans le fichier views/messages/validate_form.ctp :
[code]<?php echo $error; ?>[/code]
Dans le fichier webroot/js/validation.js :
[code]$.post(
'/messages/validate_form',
{ field: $('#name').attr('id'), value: $('#name').val() },
handleNameValidation
);
});
function handleNameValidation(error) {
if (error.length > 0) {
if ($('#name-notEmpty').length == 0) {
$('#name').after('<div id="name-notEmpty" class="error-message">' + error + "</div>");
}
}
else {
$('#name-notEmpty').remove();
}
}[/code]
et dans MessagesController :
[code]public function validate_form() {
if ($this->RequestHandler->isAjax()) {
$this->request->data['Message'][$this->params['form']['field']] = $this->params['form']['value'];
$this->Message->set($this->data);
if ($this->Message->validates()) {
$this->autoRender = FALSE;
}
else {
$error = $this->validateErrors($this->Message);
$this->set('error', $error[$this->params['form']['field']]);
}
}
}[/code]
je pense que l'erreur viens de la fonction validate_form car si l'on débuge $this->request, on a un retour qui semble correct :[img]http://images.bonjourcondo.com/cakephp/debug.png[/img]
Est ce quelqu'un aurait un piste ? :)
Merci d'avance