javascript-根据ComboBox选择设置字段

我不是JavaScript的新手,但这是我第一次尝试Acrobat脚本.

我想做的就是根据comboBox中选择的值更改文本字段.

由于我有许多具有相同选项集的不同组合框,并且应该绑定到这些文本框,因此我希望可以使用所有这些组合框的文档作用域功能.

我不确定这是否可能,但这就是我的想法…

检测何时更改组合框.在提交变更事件时,从中获取导出值,并使其成为相关文本字段的值.

步骤如下:

>捕获组合框onmouseup事件
>检测哪个组合框触发了事件
>使用数组列表将组合框的名称与其关联的文本字段匹配
>使用getField()来获取文本字段
>将文本字段值设置为组合框的导出值

任何帮助,将不胜感激.有关Acrobat事件触发器及其工作方式的特别好资源.我已经阅读了很多API文档,但找不到任何内容.

解决方法:

找到了!

经过数小时/几天的谷歌搜索,我终于找到了可行的解决方案.

处理程序功能需要绑定到“按键”事件.

处理函数应包含:

if(!event.willCommit) {
  this.getField('[field]').value = event.change;
}

注意:其中“字段”是要更新的字段的名称,而event.change是在组合框中选择的值.

要获取选择的导出值,请使用以下命令:

if(!event.willCommit) {
  this.getField('[field]').value = event.changeEx;
}

显然,每当与UI元素进行交互时,都会触发“击键”.如果您不希望它在文档加载时执行,请确保在页面加载事件期间将处理函数绑定到该事件.

想法:AcroForms JS(Acrobat的Javascript)具有严重损坏的事件模型.如果在使用此偶数处理程序时要获得组合框的值,它将提供一个过时的值.使其运行起来不仅需要晦涩难懂的技巧,而且几乎没有AcroForms JS社区可以为此类难题提供答案.

上一篇:Acrobat Pro DC v2020.006.20042 特别版


下一篇:[pdf 编辑]这款 PDF *器,让你像用 Word 那样编辑 PDF