Avant que la ligne modifiée ne soit enregistrée, une fonction personnalisée doit être appelée pour valider la possibilité de sauvegarde.comment implémenter la validation au niveau des lignes dans jqgrid
Si cette fonction personnalisée renvoie la valeur false, l'enregistrement de la ligne doit être annulé et la ligne doit rester en mode d'édition afin que l'erreur puisse être corrigée et enregistrée à nouveau. Comment valider la ligne dans les modes d'édition en ligne et de formulaire? Je n'ai trouvé aucune fonction de validation de niveau ligne. Shoult-je ajouter la fonction de validation personnalisée à la colonne pour valider ligne ou y at-il une meilleure solution?
La validation est utilisée pour envoyer des données d'en-tête non enregistrées au serveur qui doit être sauvegardé avant ou avec des sauvegardes détaillées. J'ai essayé 'editrules = {custom = true, custom_func = fonction (valeur, nomcol) { if (! SaveHeader()) return [false, '']; else return [true, '']; }} '. En cas d'erreur, SaveHeader imprime le message d'erreur et renvoie false. Cependant, jqGrid imprime toujours le message d'erreur même si custom_func renvoie [false, '']. Comment supprimer ce message d'erreur ou au moins imprimer la valeur de la colonne dans le message d'erreur? Ou est-il préférable/comment envoyer des données de formulaire avec des données de ligne pour modifier/ajouter une méthode dans le serveur? – Andrus
@Andrus: La validation côté client est exactement pour afficher un message à l'utilisateur en cas de données erronées, donc je ne comprends pas pourquoi vous essayez d'utiliser '[false, '']'. Le 'SaveHeader' ne devrait ** ** afficher ** aucun message, mais vous renvoie et' custom_func' devrait renvoyer le message en tant que deuxième élément du tableau. – Oleg
Merci. Deux problèmes: 1. jqGrid imprime la valeur de la colonne au début du message lui-même. Cette valeur n'est pas liée à l'erreur de validation de ligne, donc je cherche un moyen de la rejeter. 2. Le message d'erreur jqGrid apparaît dans la boîte de dialogue modale. SaveHeader() ajoute un message d'erreur modale dans l'écran, je cherche un moyen pour un tel message. – Andrus