我是 Bluebeam 的新手,我的任务是制作一个表单,其中文本字段根据下拉选择自动填充。下拉列表是联系人,自动填充区域是职位、电子邮件和电话。我发现了一些看起来可能有效的 Javascript ( How to make a Drop-down form in a PDF auto-populate a text box [Bluebeam] ),但我不知道如何在 Bluebeam 中实际设置它。
我在表单中输入了下拉菜单,并且为自动填充区域创建了表单文本框。但是我应该把它放在哪里,如果这是我会使用的代码:
ar contarr = new Array() ;
contarr[0] = ["Contact", "Title", "Email", "Telephone"] ;
contarr[1] = ["Miguel", "Facilities Manager", "Miguel@gmail.com", "+1 555.555.9285 | Cell"]
contarr[2] = ["Jerry", "Facilities Manager", "Jerry@gmail.com", "+1 555.555.8642 | Cell"]
contarr[3] = ["Andrew", "Engineer", "Andrew@gmail.com", "+1 555.555.0985 | Cell"]
contarr[4] = ["Tom", "Director", "Tom@gmail.com", "+1 555.555.5987 | Cell"]
contarr[5] = ["Richard", "Supervisor", "Richard@gmail.com", "+1 555.555.7193 | Cell"]
我找到了这部分答案:
“在您的下拉列表中,您添加联系人姓名,并作为返回值,添加其条目在 contarr 数组中的索引号。假设我们将下拉列表称为“联系人”。”
我不知道该怎么做。我已经添加了联系人姓名,但是我在哪里放置“返回值”和“索引号”?我不知道“contarr array”是什么。
它还在我将放置的独立文件中说:
var sele = this.getField("Contact").value ;
this.getField("Title").value = contarr[sele][1] ;
this.getField("Email").value = contarr[sele][2] ;
this.getField("Telephone").value = contarr[sele][3]
独立字段只是我隐藏在 pdf 某处的常规文本框,还是我们在谈论 excel 工作表之类的东西?
我在整个网络上都进行了搜索,但找不到分步说明。非常感谢任何帮助。
最佳答案
这是一个片段,可以是一个文档级脚本来实现你想要的。该代码假定您有 4 个表单域,一个名为“联系人”的下拉列表,然后是 3 个文本框,即“标题”、“电子邮件”和“电话”。
该代码使用来自 contarr 的名称填充组合框,然后添加代码以响应事件项目的更改以更新文本框。
var contarr = new Array() ;
contarr[0] = ["Contact", "Title", "Email", "Telephone"] ;
contarr[1] = ["Miguel", "Facilities Manager", "Miguel@gmail.com", "+1 555.555.9285 | Cell"]
contarr[2] = ["Jerry", "Facilities Manager", "Jerry@gmail.com", "+1 555.555.8642 | Cell"]
contarr[3] = ["Andrew", "Engineer", "Andrew@gmail.com", "+1 555.555.0985 | Cell"]
contarr[4] = ["Tom", "Director", "Tom@gmail.com", "+1 555.555.5987 | Cell"]
contarr[5] = ["Richard", "Supervisor", "Richard@gmail.com", "+1 555.555.7193 | Cell"]
var names = [];
for (var i = 0; i < contarr.length; i++) {
names.push(contarr[i][0]);
}
this.getField("Contacts").setItems(names);
this.getField("Contacts").setAction("Keystroke", "onContactSwitch(event.value);");
selectContact(0); // Choose initial contact
function onContactSwitch(name) {
for (var i = 0; i < contarr.length; i++) {
if (contarr[i][0] == name) {
selectContact(i);
break;
}
}
}
function selectContact(i) {
this.getField("Title").value = contarr[i][1];
this.getField("Email").value = contarr[i][2];
this.getField("Telephone").value = contarr[i][3];
}
关于javascript - Bluebeam 基于下拉菜单自动填写表单字段,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44204069/