使用 Javascript 立即更改 PDF 中下拉对象的颜色

Immediate color change for dropdown object in PDF with Javascript

我有一个 PDF 表单,其中包含几个包含“_”、“是”、“否”、“N/A”和“其他”的下拉框。当用户选择“否”时,我希望该字段变为红色。

目前我使用的代码:

 var v = getField("AWA_01").valueAsString;
 if (v=="No") {event.target.fillColor = color.red;}
 else {event.target.fillColor = color.transparent;}

其中AWA_01是第一个下拉框的名称。我也用过代码:

switch(this.getField("TTS_01").value) {
case "No":
event.target.fillColor = color.red;
break;
default:
event.target.fillColor = color.transparent;
break;
}

这两个代码都执行,但问题是在 Adob​​e 中执行代码时的唯一选项是鼠标松开、鼠标按下、鼠标进入、鼠标退出、聚焦和模糊。由于下拉框中的“否”位于主框下方,因此颜色更改不会生效,直到您第二次重新进入该框。

我已尝试将相同的代码添加到文档 javascript 的“将打印”部分,但它似乎不起作用。有没有一种方法可以强制代码立即执行,而不是使用那些常用的鼠标选项之一?

我确实启用了“立即提交所选值”,但这没有用。

将您的代码作为自定义格式脚本附加到格式操作。格式在提交值之后但在使用新值重新绘制字段之前运行。