You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Adobe PDF表单复选框自定义计算脚本失效求助

交互式PDF重量计价脚本修复方案

常见问题排查与修复步骤

  • 字段关联错误:确保脚本里引用的复选框、重量、单价、小计字段名称和PDF里的字段名完全一致,Acrobat字段名区分大小写,别写错。
  • 触发事件不对:把脚本绑定到复选框的Mouse Up事件,或者小计字段的Calculate事件,这样勾选/取消时能实时触发计算。
  • 逻辑漏洞:未勾选时强制设为0,同时要处理重量/单价为空的情况,避免出现NaN。

单行计算脚本示例(绑定到复选框Mouse Up事件)

// 替换成你实际的字段名称
var cb = this.getField("cb1");
var weightField = this.getField("weight1");
var priceField = this.getField("price1");
var subtotalField = this.getField("subtotal1");

if (cb.value === "Off") {
    subtotalField.value = 0;
} else {
    // 空值按0处理,避免计算出错
    subtotalField.value = (weightField.value || 0) * (priceField.value || 0);
}

多行批量计算脚本示例

如果有多个行,用循环简化代码(可绑定到全局按钮或每个复选框的触发事件):

// 假设共5行,字段命名为cb1-cb5、weight1-weight5等
for (var i = 1; i <= 5; i++) {
    var cb = this.getField("cb" + i);
    var weight = this.getField("weight" + i);
    var price = this.getField("price" + i);
    var subtotal = this.getField("subtotal" + i);
    
    if (cb.value === "Off") {
        subtotal.value = 0;
    } else {
        subtotal.value = (weight.value || 0) * (price.value || 0);
    }
}

额外注意事项

  • 重量和单价字段要设置为数字类型:在Acrobat里编辑字段属性,选择“格式”标签,设置为数字,避免字符串导致计算错误。
  • 确保PDF启用JavaScript:打开Acrobat的「编辑-首选项-JavaScript」,勾选“启用Acrobat JavaScript”。

内容的提问来源于stack exchange,提问作者Riki

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.19 08:35:31