abracadabraPDF › Forums › PDF – Général › Champs liste de formulaire vide
- Ce sujet est vide.
-
CréateurSujet
-
27 novembre 2013 à 07:38 #44720
DeyDey
MembreBonjour,
Est-il possible d’initialiser une liste déroulante à 0, qu’elle soit vide par défaut, d’un formulaire pdf ? (Adobe Acrobat XI)Merci d’avance.
-
CréateurSujet
-
AuteurRéponses
-
27 novembre 2013 à 09:21 #56284
alex
ParticipantBonjour,
Pour effacer le contenu d’un menu déroulant ou d’une liste, placer ce script en ouverture de document:
this.getField(“Nom du Champ”).clearItems();On peut aussi écrire un script qui efface tous les menus déroulants…
indexField=0;
while(indexField{
fieldName=this.getNthFieldName(indexField);
if(this.getField(fieldName).type==”combobox”)
{
this.getField(fieldName).clearItems();
}
indexField=indexField+1;
}Pour les listes remplacer “combobox” par “listbox”
27 novembre 2013 à 10:05 #56285DeyDey
MembreMerci Alex,
J’ai ajouter ce script à l’ouverture et sur le bouton “Reset” mais quand je reset le forumlaire, les liste ne fonctionnent plus.Je joint le document.
[attachment deleted by admin]
27 novembre 2013 à 10:43 #56286alex
ParticipantDans le script xinitialisation(), tu fais référence à une table qui n’existe pas (data02_CAP).
L’exécution du script s’arrête là.
J’ai corrigé.[attachment deleted by admin]
27 novembre 2013 à 10:46 #56287DeyDey
MembreCa ne fonctionne toujours pas chez moi.
27 novembre 2013 à 13:11 #56288alex
ParticipantOoops,
Effectivement, la correction n’était pas faite.[attachment deleted by admin]
27 novembre 2013 à 13:44 #56289DeyDey
MembreJe suis désolé mais cela ne fonctionne toujours pas. :Ooops:
27 novembre 2013 à 16:36 #56290alex
ParticipantBonsoir,
Il faut bien activer les privilèges d’exécution du JavaScript (capture)
Par ailleurs il ne faut pas autoriser les saisies dans les menus déroulant puisque ce sont les tables qui chargent les données. Ni activer le correcteur orthographique qui mange du temps pour rien (capture)
Fais un test avec le formulaire joint et envoies ce que la console affiche (Ctrl-J)[attachment deleted by admin]
28 novembre 2013 à 07:17 #56291DeyDey
MembreAlors à l’ouverture, les liste on leur valeur par défaut, et quand je clique sur “Reset” les liste ce vide mais ne fonctionnent plus (il ni a plus de données).
J’ai bien suivis tes instructions pourtant, je ne comprends pas.La consolle n’affiche pas d’erreurs spécifique pour ces manipulations.
28 novembre 2013 à 08:54 #56292alex
ParticipantEt oui, il n’y a pas d’erreur !
Ces deux boutons sont là pour les tests:
“Reset” initialise le formulaire et en effet, les menus déroulants ne “fonctionnent plus” puisqu’ils sont vides.
“Test” recharge ces menus déroulants !
Tu peux donc les supprimer, le chargement se fait à l’ouverture du document.28 novembre 2013 à 09:20 #56293DeyDey
MembreEn fait je voulais les laisser pour que l’utilisateur puisse changer les pièces jointes, qu’il n’est plus qu’a cliquer sur actualiser pour rafraîchir le formulaire.
Mais le truc c’est qu’il y a des champs qui ne doivent potentiellement pas être remplis, et s’il ne sont pas vides, ça va apparaître à l’impression.
A l’ouverture du document, les champs ont une valeur par défaut qui n’est pas nulle.28 novembre 2013 à 09:34 #56294alex
ParticipantEn ajoutant la ligne suivante au tout début du script xinitialisation(), le formulaire sera vierge:
this.resetForm();28 novembre 2013 à 09:47 #56295DeyDey
MembreLes champs valeurs par défaut des listes ne sont pas vide.
28 novembre 2013 à 13:19 #56296alex
ParticipantPour n’utiliser que les boutons il faut supprimer la ligne:
xintialisation();
Ainsi, le préremplissage des menus déroulants ne se fera qu’à la demande et on pourra enregistrer le formulaire avec ses données sous Adobe Reader.28 novembre 2013 à 13:39 #56297DeyDey
MembreJe ne comprends pas la.
je réexplique: J’aimerai qu’a l’ouverture du document, tous les champs soient vides mais utilisable.
Et que si l’utilisateur modifie une pièce jointe et donc actualise ou reset le formulaire, celui ci se remet à 0 ou s’actualise mais qu’il soit utilisable.28 novembre 2013 à 14:53 #56298alex
ParticipantPlacer
this.resetForm();
à l’ouverture du document, rien de plus.
Mais il ne sera pas possible d’enregistrer le formulaire complété pour le consulter ultérieurement.Pour garder les deux possibilités (conserver les données précédemment saisies ou non), créer un script de document comme suit:
function init()
{
//Ce script sera exécuté à l’ouverture du document.
rp=app.alert(“Effacer les saisies antu00E9rieures?”,2,2)
if(rp==4)
{
//si oui, les saisies et contenus des menus déroulants sont effaces.
this.resetForm();
}
}
init();29 novembre 2013 à 07:28 #56299DeyDey
MembreJe suis complètement perdue la.
Le script marche mais mes listes déroulantes affiches toujours une valeur par défaut.
Je ne comprends pas.30 novembre 2013 à 09:12 #56300alex
ParticipantTu as laissé la ligne
xinitialisation();
qui exécute le script à l’ouverture.2 décembre 2013 à 07:30 #56301DeyDey
MembreDans quel script?
[attachment deleted by admin]
3 décembre 2013 à 09:12 #56302alex
ParticipantSous Acrobat Pro
Outils>
Scripts JavaScript>Scripts JavaScript du document>
Sélectionner xInitialisation>Modifier
A la fin de la fonction :
function xinitialisation()
{
….
}
xinitialisation();Supprimer cette dernière ligne !
3 décembre 2013 à 10:09 #56303DeyDey
MembrePlus rien ne fonctionne.
Mes listes sont soit vides et inutilisable, soit ont une valeur par défaut que je ne veux pas voir apparaître.3 décembre 2013 à 10:31 #56304alex
ParticipantEnvoies ton formulaire…
3 décembre 2013 à 10:35 #56305DeyDey
MembreVoila.
Désolé mais ça m’embête tout autant.[attachment deleted by admin]
3 décembre 2013 à 13:46 #56306alex
ParticipantCi-joint le formulaire dans lequel j’ai supprimé la ligne xinitialisation() comme je le demandais.
De ce fait, le remplissage des menus déroulants ne se fait que sur demande comme prévu.[attachment deleted by admin]
3 décembre 2013 à 14:10 #56307DeyDey
MembreAu démarrage, les listes sont vides mais ne fonctionnent toujours pas; si j’actualise, les listes fonctionnent mais gardes toujours une valeur par défaut.
3 décembre 2013 à 14:58 #56308alex
Participant1-“Au démarrage, les listes sont vides mais ne fonctionnent toujours pas”
Voilà qui me paraît tout à fait normal puisqu’on ne lance plus le programme à l’ouverture du document (voir demande ci-dessus)!2-“si j’actualise, les listes fonctionnent mais gardes toujours une valeur par défaut”
Là aussi, c’est le comportement normal des listes et menus déroulants , mais, mais, supposons….
faisons l’hypothèse que tu souhaites avoir un item de liste vierge, dans ce cas le formulaire joint ajoute un item de liste en blanc qui deviendra l’item par défaut. La sélection de cet item par l’utilisateur réinitialisera les champs associés.[attachment deleted by admin]
4 décembre 2013 à 07:19 #56309DeyDey
MembreMerci ça correspond à ce que je voulais obtenir.
Par contre, je peux enlever la demande à l’ouverture du document ou est-ce génant?
Et quant je Reset ou Actualise, les boutons du numéro du bordereau ne se réinitialise pas (ce n’est qu’un léger problème, peut-être que l’on peu “isoler” uniquement ce champ à la réinitialisation?)
PS: Joyeux anniversaire Alex
!!!
-
AuteurRéponses
- Vous devez être connecté pour répondre à ce sujet.