0

我有一个可填写的 PDF 文件。我想在用户保存 PDF 文档时要求 TextBox 有一个值,即该值不为空。

这是我尝试过的:

(1) 在“文本框”上设置“必填”字段。

问题:除了将文本框涂成红色之外,这并没有多大作用。

(2) 我尝试在“onBlur”事件中使用以下代码:

f = getField(event.target.name)
if (f.value.length == 0)
{    
   f.setFocus()    
   //Optional Message - Comment out the next line to remove
   app.alert("This field is required. Please enter a value.")
}

问题:如果用户从不点击此框,则没有问题

(3) 我尝试使用“验证”选项卡并运行自定义 JavaScript。

问题:如果您不单击该框,则没有验证,因此如果用户忘记填写文本框,则非常高兴将文本框留空

好的,我没有想法......有人吗?

4

1 回答 1

0

由于您使用的是 Acrobat JavaScript,因此我假设您使用的查看器支持并执行 Acrobat JavaScript。
在这种情况下,您可以将文档的 WillSave 操作设置为自定义 JavaScript 操作并在此处执行验证。我不确定您是否可以取消保存操作,但至少您可以在验证失败时显示警报。
更新:此脚本将遍历所有字段并在字段值为空时显示并发出警报。

for ( var i = 0; i < this.numFields; i++) {
    var fieldName = this.getNthFieldName(i);
    var field = this.getField(fieldName);
    if (field.value.length == 0)
    {    
        field.setFocus()    
        app.alert("Field " + fieldName + " is required. Please enter a value.")
    }
}

将脚本放在文档的 Will Save 操作中,每次用户保存表单时它都会运行。在 Acrobat 中,您可以在“工具”>“JavaScript”>“设置文档操作”中进行设置,然后选择“文档将保存”。

于 2013-06-04T06:56:16.640 回答