Donnez vie à vos documents numériques !
 

Répondre à : Renommer plusieurs champs de formulaire avec JavaScript

abracadabraPDF Forums PDF – Général Renommer plusieurs champs de formulaire avec JavaScript Répondre à : Renommer plusieurs champs de formulaire avec JavaScript

#71248
bebarth
Maître des clés

Voici un exemple où j’ai indiqué l’ordre de tabulation souhaité en info-bulle de chaque champ.
Après avoir lancé le script, les info-bulles sont effacées et j’ai indiqué pour les champs texte uniquement le numéro de tabulation, mais ça c’est juste pour montrer que ça a fonctionné !

Le script à lancer de la console ou à mettre en action :

var nomIncr="BB";
var nomChamps=[];
for (var i=0; i<this.numFields; i++) nomChamps.push([getNthFieldName(i),this.getField(getNthFieldName(i)).userName]);
nomChamps.sort(function(a, b){return a[1]-b[1]});
for (var i=0; i<nomChamps.length; i++) {
var leNom=nomChamps[0];
var nouveauNom=nomIncr+"_";
if (i<10) nouveauNom+="00"+i;
else if (i<100) nouveauNom+="0"+i;
else nouveauNom+=i;
g=this.getField(leNom);
var leType=g.type;
var laPage=String(g.page);
var lesPages=laPage.split(",");
for (var p=0; p<lesPages.length; p++) {
var cettePage=Number(lesPages[p]);
if (lesPages.length>1) {
var nomChamp=leNom+"."+p;
} else {
var nomChamp=leNom;
}
g=this.getField(nomChamp);
var lesCoord=g.rect;
var f=this.addField(nouveauNom, leType, cettePage, lesCoord);
f=this.getField(nouveauNom);
for (var j in g) {
try {
if (typeof g[j]!="function" && j!="name" && j!="type" && j!="page" && j!="rect") {
f[j]=g[j];
}
} catch(e) {}
}
f.userName="";
if (f.type="text") f.value="Tabulation n° "+nomChamps[1];
}
this.removeField(leNom);
}

@+
😎

Attachments:
You must be logged in to view attached files.