LiveCycle Designer 创建提交表单
1. 概述
LiveCycle Designer 是 Adobe 提供的专业 PDF 表单设计工具,支持创建动态 XFA 表单并实现多种数据提交方式。
表单提交按钮类型
- 通用按钮(Generic Buttons):可自定义提交格式
- 邮件提交按钮(E-mail Submit):自动以邮件发送 XML 数据
- HTTP提交按钮(HTTP Submit):通过 HTTP Post 提交数据
2. 代码示例(带中文注释)
示例1:通用按钮提交 XML 数据
// 获取按钮对象
var submitBtn = xfa.resolveNode("form1.submitButton");// 设置为提交按钮
submitBtn.fieldType = "submit"; // 指定为提交类型// 配置提交选项
submitBtn.submitFormat = "XML Data"; // 提交格式为XML
submitBtn.submitTarget = "http://example.com/api"; // 目标URL
submitBtn.encoding = "UTF-8"; // 编码格式/* 中文说明:1. fieldType="submit" 将按钮设为提交功能2. submitFormat 支持: - "XML Data Package" (XDP)- "PDF"- "XML Data"- "URL Encoded Data"
*/
示例2:邮件提交按钮配置
// 获取邮件提交按钮
var emailBtn = xfa.resolveNode("form1.emailSubmitButton");// 配置邮件参数
emailBtn.mailAddress = "admin@example.com"; // 收件地址
emailBtn.mailSubject = "表单提交数据"; // 邮件主题
emailBtn.includeAttachments = 1; // 包含附件/*中文说明:1. 邮件按钮会自动将表单数据转为XML附件2. 无需设置提交格式,固定为UTF-8编码的XML
*/
3. 各提交格式对比
格式类型 | 适用场景 | 是否需要 Reader Extensions |
---|---|---|
XML Data Package | 需要完整表单重建的场景 | 是 |
包含数字签名或需保留PDF样式的场景 | 是 | |
XML Data | 仅需结构化数据的后端系统 | 否 |
URL Encoded | 传统Web表单处理 | 否 |
4. 高级配置技巧
HTTPS 提交注意事项
// 通用按钮实现HTTPS提交
var httpsBtn = xfa.resolveNode("form1.httpsButton");
httpsBtn.submitFormat = "XML Data";
httpsBtn.submitTarget = "https://secure.com/api"; // 注意使用https协议
httpsBtn.encryption = "TLS 1.2"; // 指定加密协议
动态目标URL设置
// 根据条件动态改变提交地址
if (xfa.host.version > 11) {submitBtn.submitTarget = "http://new.example.com/api";
} else {submitBtn.submitTarget = "http://legacy.example.com/api";
}
5. 常见问题解决方案
建议:
- 测试环境始终先使用
XML Data
格式验证数据完整性- 生产环境推荐结合服务器日志分析提交过程
- 对于敏感数据务必使用HTTPS协议