当前位置: 首页 > 知识库问答 >
问题:

PDF在自动填充的字段中切换不同的值,同时不影响原始输入

海叶秋
2023-03-14

我正在处理一个pdf文件,其中有许多页面在eacb页面上有一个人的名字。我在所有字段中为标签命名相同的东西,以便在整个pdf中轻松地自动化名称。

客户端希望在整个文档中更改名称,因此,现在当我尝试更改页面上除第一个以外的名称时(当它最初询问您的姓名时),它会更改所有字段,例如:

我想在每个字段中运行简单的javascript:

this.getField("Date") = event.value || event.value = event.value;

我开始思考剧本的范围。我在属性的“操作”选项卡中工作,所以我真的需要设置变量吗?所以我做到了:

var name000=这个。getField(“名称”);name000==事件。重视| |事件。值==事件。价值

然后我浏览了整个文档,唯一地更改了所有的字段名。代替所有的日期,Name00、Name01、Name02、Name03等等,一直到Name24。

用于前几个标签:

this.getField("Date").value = this.getField("Date00").value;
this.getField("Date").value = this.getField("Date01").value;
this.getField("Date").value = this.getField("Date02").value;

这个场景的问题是在Date00之后,字段是空的,就像我什么也没做一样。添加了变量,情况也是一样

this.getField("Name") = event;
// set value of field "Name" to this field's value;
this.getField("Name00").value = event.value;
// end on blur action for field Date;


var Name1 = this.getField("Name");
var Name2 = this.getField("Name01");
Name2.value = Name1.value;
// end on blur action for field Date;

var Name1 = this.getField("Name");
var Name3 = this.getField("Name02");
Name3.value = Name1.value;

Third label is blank, so I assigned unique variables named the Name Field differently and still blank after I assign more than one field.

var name000 = this.getField("Date");
name000 == event.value || event.value == event.value; <-- This has the same problem. 

9月2日更新。

这getField(“Name”)=事件。重视| |事件。值=事件。价值Onblur Javascript errors“语法错误:左侧的赋值无效。”仅从这个错误来看,我不想遍历整个表单来更正所有字段名“Name”。我给它们取了不同的名字:名字,名字01,名字02,03,10,直到名字24

另外,复制到每个字段似乎很耗时:

this.getField("Name") = event.value || event.value = event.value;
this.getField("Name00") = event.value || event.value = event.value;
this.getField("Name01") = event.value || event.value = event.value;
this.getField("Name02") = event.value || event.value = event.value;
this.getField("Name03") = event.value || event.value = event.value;
           " \\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\\"
this.getField("Name24") = event.value || event.value = event.value;

反正也算不上。

尝试一个OOP脚本以获得更多的自动化和更少的代码:

var i f fi nv;
function n(f){
    return n > 9 ? "" + n: "0" + n;
}

f = this.getField(“Name") = event.value;

fi = this.getField("'Name' + i") = event.value;

nv = event.value = event.value;

while (i = 0; i < i++) {
return i <= 24;
};

f fi || nv;

但我有个错误,漏掉了“;”在2号线?

从博客中,我注意到他们只在第一个字段中使用了一个脚本来完成任务。我可以通过PDF主Javascript元数据更改所有相同字段的更新吗?有人这样做了吗?有没有简单的方法或无论如何来解决这个问题?我在这上面花了太多时间。

共有1个答案

杨飞飙
2023-03-14

进一步调查后,我发现每个字段都必须是唯一的,除了主字段之外,每个字段都需要JavaScript在字段属性的actions选项卡上运行OnBlur:

//Set the source and destination vars:
      var source = this.getField("ClientName");
      var destination = this.getField("CN2");

//See if destination is empty and if so, insert source value
      if(destination.value==''||destination.value==null){destination.value=source.value}
 类似资料:
  • 问题内容: 我已经看到这个问题在互联网上流传,但是我还没有找到可行的解决方案。基本上,我想加载我的应用程序并按下一个按钮;然后,该按钮操作将在已加载到Web视图中的网站中填写用户名和密码(或等待onPageFinished)。最后,登录页面上的提交按钮将被激活。 据我了解,这可以通过使用loadUrl(javascript)进行Java注入来完成,但是我不知道用Java命令填写字段是什么。对于iO

  • 2.6 在不同的窗口中切换 当CGDB最初运行时,CGDB默认处于GDB模式。状态栏右侧的 * 符号显示当前的输入会被传入GDB窗口。按下 ESC 键可切换至代码窗口,CGDB模式切换键是将用户从别的模式切换到CGDB模式的快捷键,默认的CGDB模式切换键是 ESC 。如果您想改变CGDB模式切换键对应的快捷键,请查阅CGDB的配置选项。参见第4章。 现在CGDB处于CGDB模式。要切换回GDB模

  • 问题内容: 我托管了5个片段,在每个片段上我都需要填写一些字段。 我想从中获取这些字段的值。我尝试了类似的东西: AddActivity.java FragPagerAdapter.java OtherFragment.java 公共类OtherFragment扩展Fragment {Button btn; 更新 的问题我总是得到EditText(而其他字段要获得)的问题等于null如果它们位于片

  • 我们有一个系统,创建预先填写的PDF合同,然后我们需要发送给客户签名,也允许客户更新可能包含错误信息的字段。 这里有一个解决办法或选择,但我希望有更好的方法 1)不要使用生成PDF的模板引擎,而是将这个负担移到Docusign中。然后我们可以使用Docusign中的文本选项卡来预填充字段并保持其可编辑性。

  • 我只找到了如何填充一个字符数组相同的字符,如: 我尝试的是: 我总是得到错误,将abc-数组从char[]更改为long[]。\ 编辑: 我想要输出的是,我在数组的最后给出5个字符(例如a、b、c、d、e) 提前感谢:)

  • 我在Adobe Acrobat Pro 2017中创建/编辑了一个PDF。目标是在我们的网站上动态填写它。除了一部分外,它对所有人都是成功的;其中一个表单字段不会按预期包装文本。 这是我用Acrobat Reader 2017手动输入的PDF表单输出 这是代码的输出 这是一个希望匿名的文件版本https://github.com/Wyseguys/wyseguys.github.io/blob/W