我有一个PDF表单,它使用用Perl编写的CGI脚本将信息提交到Apache服务器:
var doc = event.target;
var x = doc.submitForm({
cURL: "http:",
cSubmitAs: "XML"
});
CGI能够读取信息并将其保存在一个文件中,但是我想重新提交一个引用代码给x
中的变量,然后让PDF在一个框中显示它。我在CGI脚本中使用了以下代码:
print "Content-type: text/html\n\n";
print "$i";
但它打开了一个新的PDF,其中显示了变量$i
的内容。
我不知道问题是PDF代码以另一种方式指定了变量的读取,还是CGI脚本以错误的方式发送值。你能解释一下吗?
发布于 2012-09-23 16:16:39
PDF中的表单提交就像HTML中的表单提交一样。你向服务器发送一个请求,服务器用一个新的页面应答,在你的例子中,原来的PDF格式的页面被一个"text/ HTML“类型的新页面所取代(这很奇怪,因为你并不想把HTML发送到浏览器)。
看起来您不想提交表单,但您希望提交数据,并在同一页面中获得响应。这在HTML中是可能的,但在PDF中很难实现。我写了一本关于PDF的书,这是一个或多或少符合你要求的摘录:http://bit.ly/gl1Urw
在本例中,我在能够向嵌入JavaScript的HTML页面中的JavaScript发送消息的PDF中嵌入PDF (反之亦然)。这样,您不需要将数据从PDF提交到服务器,而是将其传递到HTML页面。在HTML中,您可以设置与服务器的通信,并将响应发送到PDF。
如果这不是您的选择(例如,因为您不能更改提交数据的PDF ),则不应该使用"text/html“内容进行响应。相反,您应该返回一个新的PDF文件,该文件与原始表单相同,只是在服务器端填写了一些字段。
更新:你的问题是基于错误的假设,你可能想要修改它。
https://stackoverflow.com/questions/12546066
复制相似问题