下载的可填充PDF表单能否通过JavaScript向服务器提交数据?

下载的可填充PDF表单能否通过JavaScript向服务器提交数据?,pdf,acrobat,Pdf,Acrobat,虽然不使用PDF很好,但我们使用的是一个只生成PDF表单的遗留系统 我正在使用一些嵌入JavaScript的PDF表单将数据提交回服务器。在浏览器中查看和填写表单时,该表单有效 不幸的是,我们的用户喜欢将表单下载到他们的计算机上,完整地填写表单,然后才从Acrobat Reader得到一个错误,即除非将表单加载到浏览器中,否则它无法提交表单 如何使JavaScript表单提交在web浏览器之外工作,阻止用户下载表单,或者让表单在他们填写表单之前警告他们表单无法工作?我对PDF的了解可能至少是Ac

虽然不使用PDF很好,但我们使用的是一个只生成PDF表单的遗留系统

我正在使用一些嵌入JavaScript的PDF表单将数据提交回服务器。在浏览器中查看和填写表单时,该表单有效

不幸的是,我们的用户喜欢将表单下载到他们的计算机上,完整地填写表单,然后才从Acrobat Reader得到一个错误,即除非将表单加载到浏览器中,否则它无法提交表单


如何使JavaScript表单提交在web浏览器之外工作,阻止用户下载表单,或者让表单在他们填写表单之前警告他们表单无法工作?

我对PDF的了解可能至少是Acrobat的一个版本,但我认为对你的问题的简短回答是“你不能”

从更大的角度来看:使用PDF作为数据输入用户界面是一条痛苦的道路

如果您的目标是在web上提供一个图片完美的UI,请查看以下解决方案

如果您的目标是提供“丰富”的用户体验,请查看


如果您的目标是省去将现有文档复制为web表单的工作,那么您还没有了解使用PDF作为数据输入机制需要多少实际工作。

对于Reader,Javascript执行可能在默认情况下关闭。浏览器插件是一个不同的野兽,有不同的默认值。看起来我可以使用一个非JavaScript的“将此数据发布到某处”操作,它可以做完全相同的事情,并且可能工作得更好。。。但是我们使用的这个特殊的PDF生成器提供了它自己的定制JavaScript。哦,这是一个非常旧的版本,但是错误消息的原因是用户使用了一个非常旧版本的Reader。如果我没记错的话,Reader 5和更新版本可以提交表单数据,而无需在浏览器下运行。(请注意,我可能已关闭,并且已在Reader 6中引入了直接提交的可能性)@dirkgently:Nice handle!我只非常熟悉PDF 1.4和更早版本,尽管目前的版本似乎是1.7。Adobe可能在新版本的规范中添加了很多网络感知功能,但我并不知道这些功能。@dirkgently:1.4规范不是针对Acrobat 5及以上版本的吗?我输入了一个错误。是的,你是对的——Acrobat5支持1.4(及更低版本)。我误解了“曲线背后”这一部分。我的意思是,最新的Acrobat1.N支持标准的PDF 1(N-1)。这并不意味着那时有PDF 1.N可用,Acrobat也不支持它。这更像是一种命名法。1.7是Adobe发布的最后一个标准。PDF现在是一个ISO标准,Acrobat和PDF的版本控制不规范现象很快就会消失——至少我希望如此。