请求工单PDF自动化JavaScript模板:联动Dropdown与Check Box
PDF工单组件联动JavaScript模板
下面是一个可复用的JavaScript模板,专门用于PDF工单的组件联动逻辑,你可以根据不同规则快速修改适配:
// 通用联动处理函数 function setupDropdownTrigger(options) { // 获取目标组件 const dropdown = this.getField(options.dropdownId); const targetCheckbox = options.targetCheckboxId ? this.getField(options.targetCheckboxId) : null; const targetDropdown = options.targetDropdownId ? this.getField(options.targetDropdownId) : null; // 监听下拉框变化事件 dropdown.setAction("Keystroke", function () { const selectedValue = dropdown.value; const shouldTrigger = options.triggerValues.includes(selectedValue); // 控制复选框勾选状态 if (targetCheckbox) { targetCheckbox.checkThisBox(shouldTrigger ? 0 : -1); } // 设置目标下拉框值 if (targetDropdown) { targetDropdown.value = shouldTrigger ? options.targetDropdownValue : ""; } }); } // ------------------------------ // 示例:你的基材联动规则配置 // ------------------------------ setupDropdownTrigger({ dropdownId: "Dropdown 6", // 触发源下拉框ID targetCheckboxId: "Check Box 32", // 联动的复选框ID targetDropdownId: "Dropdown34", // 联动的下拉框ID triggerValues: ["Aluminium", "Cast Aluminium", "Stainless Steel", "Galvanised"], // 触发联动的选项列表 targetDropdownValue: "Etch HMG St3000" // 触发时设置的下拉框内容 }); // ------------------------------ // 扩展示例:添加其他联动规则 // ------------------------------ // 比如新增塑料基材的联动逻辑 // setupDropdownTrigger({ // dropdownId: "Dropdown 6", // targetCheckboxId: "Check Box 45", // targetDropdownId: "Dropdown46", // triggerValues: ["Plastic", "ABS Plastic"], // targetDropdownValue: "UV Surface Coating" // });
使用说明
- 匹配组件ID:替换配置里的
dropdownId、targetCheckboxId、targetDropdownId为PDF工单中实际的组件ID(注意区分大小写和空格) - 调整触发条件:修改
triggerValues数组,添加或移除需要触发联动的选项 - 自定义目标值:修改
targetDropdownValue来设置触发时目标下拉框的显示内容 - 简化逻辑:如果不需要联动复选框或下拉框,将对应参数设为
undefined即可 - 批量添加规则:复制示例配置块,修改参数就能快速新增其他联动逻辑
注意:这段代码需要在PDF编辑器(如Adobe Acrobat)的文档级脚本或JavaScript控制台中运行,确保组件ID与PDF内的实际ID完全一致。
内容的提问来源于stack exchange,提问作者SamHawkins
相关产品推荐
相关产品推荐

