Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/javascript/429.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Adobe Acrobat-使用JavaScript迭代PDF中的所有字段时出错_Javascript_Pdf_Null_Adobe_Acrobat - Fatal编程技术网

Adobe Acrobat-使用JavaScript迭代PDF中的所有字段时出错

Adobe Acrobat-使用JavaScript迭代PDF中的所有字段时出错,javascript,pdf,null,adobe,acrobat,Javascript,Pdf,Null,Adobe,Acrobat,我在迭代文档中的所有字段以删除工具提示时遇到问题。这是我的密码: var index=0; while(index<this.numFields) { var nom=this.getNthFieldName(index); var fieldName=this.getField(nom); fieldName.userName = ""; index=index+1; } var指数=0; while(索引为什么要使用while 执行完全相同的操作(将m

我在迭代文档中的所有字段以删除工具提示时遇到问题。这是我的密码:

var index=0;
while(index<this.numFields)
{
    var nom=this.getNthFieldName(index);
    var fieldName=this.getField(nom);
    fieldName.userName = "";
    index=index+1;
}
var指数=0;

while(索引为什么要使用while

执行完全相同的操作(将mousetip文本设置为空白字符串)更简单

for (var i = 0 ; i < this.numFields ; i++) {
this.getField(this.getNthFieldName(i)).userName = "" ;
}
for(var i=0;i
这应该可以做到


但是,除非你有一个很好的理由,否则不推荐将“代码”>用户名设置为空白字符串;如果你的表单与辅助设备一起使用,它是需要的,而且它也是最简单最简单的帮助项目。

< P>我解决了我的问题。 当我创建表单时,为了节省时间,我使用自动字段检测为我创建了字段(该表单上大约有250个字段)。我首先需要脚本的原因是删除该功能生成的拙劣工具提示名称

显然,字段检测功能以其无限的智慧命名了几个带前导空格的字段(类似于“of INFORMATIONrow1”)。由于
getNthFieldName(index)
按字母顺序返回字段,它会返回其中一个断开的字段并立即出错,因为
getField()
不喜欢名称中的前导空格


我重新命名了这几个字段,脚本工作起来很有魅力。

我得到了基本相同的错误:
TypeError:this.getField(this.getNthFieldName(I))为null
。我的问题不是while vs for循环问题。这是另外一个问题。这听起来很像一个糟糕的PDF文档。循环看到一个字段名,但相应的字段不存在。您可以尝试使用app.alert()查找罪犯在脚本接触字段之前,将字段名写入控制台(或使用调试器并设置断点)。表单是如何创建的?Acrobat中的“另存为…”是否解决了此问题(只需确保已停用首选项中的“另存为…优化快速web视图”选项).我已经尝试将所有名称输出到控制台,效果很好。它只是不喜欢
this.getField(nom)
line。表单是使用自动表单识别功能创建的,它尝试根据它认为是空白的内容来查找所有字段。呃……找到了答案。显然,自动字段生成器使用前导空格命名了一些字段,这导致脚本出错。我修复了六个字段,现在它可以像cha一样工作rm。