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

如何使用Javascript计算AcrobatPDF中的字段?,javascript,pdf,acrobat,Javascript,Pdf,Acrobat,计算字段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 fie

计算字段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 = "";
}



var fields=this.getField(“金额”);
var a=fields.getArray();
var总和=0;
对于(i=0;i0){
event.value=总和;
}
否则{
event.value=“”;
}


在这样的循环中,在计算运行总数之前,我通常通过比较字段的
与其
默认值
来检查字段是否有值。这行代码如下所示:

if (this.getField("myField").value != this.getField("myField").defaultValue) {
if (this.getField("myField").value !== this.getField("myField").defaultValue) {
通常,在值级别进行比较就足够了,但如果0是合法值,则比较必须包括类型。然后看起来是这样的:

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

这应该可以做到。

要解决这个问题,还可以使用Javascript添加运算符“+”`来添加(连接)字符串。空字段用作字符串,因此需要通过在值后面附加+来转义字符串

sum+=+a[i]。值


它与
var fields=+this.getField(“金额”)相同

文本字段从不为空。空字段的值是零长度(空)字符串。是否必须设置默认值?值为emptyNo,不需要设置特定的defaultValue;如果“属性”对话框中的默认字段为空,则它对应于空字符串。