問題描述
用戶在 Acrobat X 中創建 PDF 表單時遇到一個需求:表單以網格形式列出多個選項,當點擊某個選項時,需要在選項周圍顯示邊框(圓形或方形),再次點擊時邊框消失。
試過的解決方案
- 在文本上方放置透明按鈕(邊框和填充均為透明,無標簽文本)
- 希望通過 JavaScript 實現點擊時切換邊框顯示/隱藏
- 計劃將代碼綁定到按鈕的"鼠標彈起"(Mouse Up)事件
JavaScript 解決方案
// 獲取目標字段(這里以"title"字段為例)
var title = this.getField("title");// 檢查觸發字段的值(這里假設"showTitle"是控制開關的字段)
if (this.getField("showTitle").value == "Off") {// 如果值為"Off",隱藏目標字段title.display = display.hidden;
} else {// 否則顯示目標字段title.display = display.visible;
}
代碼說明
代碼行 | 說明 |
---|---|
var title = this.getField("title"); | 獲取名為"title"的字段對象 |
if (this.getField("showTitle").value == "Off") | 檢查控制字段"showTitle"的值是否為"Off" |
title.display = display.hidden; | 隱藏目標字段 |
title.display = display.visible; | 顯示目標字段 |
實現建議
- 邊框實現:創建一個無填充、只有邊框的透明字段作為裝飾元素
- 控制字段:可以使用復選框作為開關,設置選中值為"Off"
- 事件綁定:將代碼放在按鈕的"計算"腳本或直接綁定到鼠標事件
流程圖
參考資料
Adobe Acrobat JavaScript API 參考 - 包含完整的 PDF 表單 JavaScript 實現指南