Acrobat表单JavaScript设置目标邮箱脚本执行异常求助
问题分析与修复
你的脚本点击确认后无法继续执行,核心原因是语法错误导致脚本执行中断。
关键错误点
代码中最后一个条件分支的写法违反JavaScript语法规则:
else (typeAC === "A380") { cToAddr = "380@company.com"; }
else关键字后不能直接跟随条件表达式,这会触发语法报错,导致脚本执行到此处就终止,无法继续运行后续的mailDoc方法。
修复后的完整代码
var sendForm = app.alert("Confirm you are you ready to submit the form?",2,2,"Submit Validation"); var message1 = "A form has been submitted. See attached."; var cToAddr = "me@company.com"; var typeAC = this.getField("Type").value; var candName = this.getField("PersonName").value; var candNumber = this.getField("PersonStaffNumber").value; var session = this.getField("SessionNo").value; var cSubline = "Form submission " + candName; if(sendForm == 4) { if (typeAC === "B757") { cToAddr = "757@company.com"; } else if (typeAC === "B767") { cToAddr = "767@company.com"; } else if (typeAC === "A330") { cToAddr = "330@company.com"; } else if (typeAC === "A380") { cToAddr = "380@company.com"; } this.mailDoc({bUI: true, cTo: cToAddr, cSubject: cSubline, cMsg: message1}); } else { app.alert("Please continue with the form"); }
额外优化建议
- 可将字段读取逻辑移至
if(sendForm ==4)分支内部,避免用户点击“否”时执行不必要的字段读取操作 - 可添加默认分支处理,当
Type字段值不在预设选项中时,弹出提示告知用户异常情况
内容的提问来源于stack exchange,提问作者rodderco
相关产品推荐
相关产品推荐

