Validation de champ dépendante ExtJs
Comment puis-je valider un champ qui dépend d'un autre domaine?
{
xtype: 'textfield',
name: 'name2',
vtype: 'type', //how to write the validation code for this if it
//depends on the value of another field?
allowBlank: false
}
source d'informationauteur fastcodejava | 2011-03-03
Vous devez vous connecter pour publier un commentaire.
En ajoutant votre propre validateur personnalisé et y effectuer votre validation.
J'ai fait la maquette, un exemple de la façon dont je le fais avec des zones de liste modifiables en Ext JS 5.1... il est facilement portable au Poste 4 du code, vous avez juste à faire usage de
initComponent
au lieu de ViewController deinit
. Voici le code (et Violon):définition du champ:
prochaine dans initComponent (ou de l'auditeur, si vous préférez):
et de définir gestionnaire dans FormPanel:
"markInvalid () méthode ne provoque pas le Champ de valider la méthode renvoie false si la valeur passe de validation. Donc, marquant simplement un Champ non valide ne va pas empêcher l'envoi de formulaires soumis à l'Ext.forme.D'Action.Soumettre.clientValidation option."
Pour cette raison combinaison allowBlank et setValue ( null ) break validation
Pour valider les champs reliés j'ai l'habitude de créer la fonction (je ajouter à mon
Ext.lib.Validators
classe afin que je puisse l'appeler dans toute l'application) qui retourne une fonction anonyme préconfigurés de la portée et de la logique de validation (donc je peux l'utiliser plusieurs fois sur ma demande).Voici un exemple:
Et voici un exemple de violon avec plage de temps de sélection.