如何使用 Javascript 计算 Acrobat PDF 中的字段?

How to calculate fields in Acrobat PDF using Javascript?

计算字段 Acrobat pdf Javascript 当我跳过一个字段时,总金额显示不正确,但当每个字段都有一个从上到下的值时它工作正常。怎么了?

var fields = this.getField("amount");
var a = fields.getArray();
var sum = 0;
for (i = 0; i < a.length; i++){
sum += a[i].value;

//I tried to place zeros in the fields if there are no values
if (fields.value == null){
   fields.value = 0;
}
}
//This code accept the total amount and also hides the default zeros 
if (sum > 0){
    event.value = sum;
}

else {
    event.value = "";
}



在这样的循环中,在累加 运行 总数之前,我通常通过比较 valuedefaultValue 来检查字段是否有值。该行看起来像这样:

if (this.getField("myField").value != this.getField("myField").defaultValue) {

通常情况下,在值级别上进行比较就足够了,但是如果0是合法值,则比较必须包括类型。然后它看起来像这样:

if (this.getField("myField").value !== this.getField("myField").defaultValue) {

这样就可以了。

要解决此问题,Javascript 加法运算符 ``+``` 也可用于添加(连接)字符串。空字段充当字符串,因此您需要通过将 + 附加到值来转义字符串。

sum += +a[i].value;

var fields = +this.getField("amount");相同