JQuery JEditable rest en mode édition en cas d’erreur

J’utilise avec succès jeditable pour soumettre via une fonction utilisant jQuery.ajax et l’option async: false, mais un problème est survenu si une erreur est renvoyée.

Comment puis-je obtenir que la zone d’édition rest activée et / ou revienne à la valeur d’origine s’il y a des erreurs? Je retourne des codes de statut http.

donc quelque chose comme

async : false .ajax submit here... if (xhr.status == 200) { return value; else { alert ('returned error'); // keep edit box activated but available for another try, or revert back to original value } 

J’ai essayé de ne pas renvoyer de valeur dans la fonction, ce qui permet d’activer la zone de saisie et de la soumettre à un autre envoi, mais la touche ÉCHAP ne fonctionne plus et si je clique en dehors de la zone d’édition, la zone de saisie rest.

Merci d’avance!

Pas sûr que cela aide dans votre situation, mais jeditable a une méthode de réinitialisation …

essayer…

this.reset ();

Cela rétablira l’élément en mode d’affichage avec la valeur d’origine.

Pour restr en mode édition, il suffit de définir l’en-tête de réponse “HTTP 404” et de générer un texte d’erreur.

PHP:

 header('HTTP/1.1 400 Bad Request'); echo "Error Text"; 

Ajoute ça:

$(this).editable("disable");

Cela devrait empêcher vos erreurs d’être modifiables, pas sûr de revenir en arrière. Je lutte un peu contre le même problème avec le retour en arrière pour le moment, mais je ne connais rien à JavaScript …