我是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"]
我找到了答案的这一部分:
“在您的Dropdown中,您添加联系人姓名,并作为返回值,在contarr数组中添加其条目的索引号。假设我们将下拉列表称为”联系人“。”
我不知道该怎么做。我已经添加了联系人姓名,但我在哪里放了“返回值”和“索引号”?我不知道什么是“控制阵列”。
它还在一份独立文件中说:
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工作表那样说话?
我在网上搜索过,找不到一步一步的说明。非常感谢任何帮助。
答案 0 :(得分:1)
这是一个片段,可以是文档级脚本,以实现您想要的。该代码假设您有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];
}