PDF JavaScript对话框中如何设置单选按钮组默认选中项?
在PDF JavaScript对话框中设置单选按钮组的默认选中项
要让对话框打开时默认选中“No”单选按钮,你需要在对话框对象中添加**initialize方法**,通过dialog.load()为单选按钮组设置初始值,具体修改如下:
function valuesDialog() { var oDlg = { result: "cancel", DoDialog: function() { return app.execDialog(this); }, complete: false, // 添加初始化方法,设置单选按钮组默认值 initialize: function(dialog) { // 给group_id为"complete"的组设置默认选中item_id为"completeFalse"的选项 dialog.load({ "complete": "completeFalse" }); }, commit: function(dialog) { var result = dialog.store(); // 直接通过group_id的值判断选中项 this.complete = result["complete"] === "completeTrue"; }, description: { name: "ADialog", elements: [ { type: "view", elements: [ { type: "view", align_children: "align_row", elements: [ { name: "Is complete?", type: "static_text", char_width: 15, }, { item_id: "completeTrue", group_id: "complete", type: "radio", char_width: 15, name: "Yes" }, { item_id: "completeFalse", group_id: "complete", type: "radio", char_width: 15, name: "No" }, ] }, ] }, { type: "ok_cancel", }, ] } }; if(oDlg.DoDialog() == "ok") { var result = { complete: oDlg.complete, } return result; } return "failed"; }
关键说明:
- PDF对话框的单选按钮组通过
group_id关联,设置默认值时,需要向dialog.load()传入一个对象,键为group_id,值为要默认选中的单选按钮的item_id。 - 你之前尝试的
checked/selected属性不适用于对话框控件,this.getField()是操作PDF文档中的表单域,和对话框控件无关,所以没有效果。 initialize方法会在对话框渲染前执行,是设置初始状态的正确时机。- 修改后的
commit方法直接通过group_id对应的值判断选中项,逻辑更清晰准确。
内容的提问来源于stack exchange,提问作者Lowadon
相关产品推荐
相关产品推荐

