我已经徒劳地搜索了好几天,但尚未找到解决我问题的方法。
理想情况下,我想将一个可填写的pdf表单嵌入到Intranet html表单中,以便提交给服务器进行处理(解析字段/值的能力很强,但不是必需的)。这些文件都在同一个域中,因此没有跨域问题。我知道我可以在pdf表单本身添加提交功能,但1)脚本超出了pdf文档管理员的能力,我不想接受,2)有数百个pdf文档,3)我需要使用表单提交的其他脚本字段/值,4)我希望pdf文档包含在登录会话中。到目前为止,服务器日志显示除传递的PDFInput
参数之外的所有字段/值,但该值为空。
这是我到目前为止所拥有的:
<script src="//ajax.googleapis.com/ajax/libs/jquery/2.0.3/jquery.min.js"></script>
<script>
$(document).ready(function() {
$(uploadForm).on("submit", function(event) {
var iframe = document.getElementById('PDFObj');
var iframeDocument = [iframe.contentDocument || iframe.contentWindow.document];
var pluginData = iframeDocument;
$(this).append('<input type="file" name="PDFInput" id="PDFInput" value="' + pluginData + '" style="visibility:hidden"/>');
return true;
});
});
</script>
和
<form enctype="multipart/form-data" method="post" name='uploadForm' id='uploadForm'>
<input type='hidden' name='rm' id='rm' value='uploadFile'>
<table align='center'>
<tr>
<td align='left'>
<strong>Notes:</strong>
<br>
<textarea cols='80' rows='2' name='notes' id='notes'></textarea>
<br>
<br>
</td>
</tr>
<tr>
<td colspan=2 align='center'>
<input type='submit'>
</td>
</tr>
<tr>
<td colspan=2>
<br>
<input type='hidden' name='formid' id='formid' value='6F45B3AF-91F3-108C-D3D9-701F541B49DC'>
<iframe type='application/pdf' src="url.pl?formid=6F45B3AF-91F3-108C-D3D9-701F541B49DC.pdf" height='800' width='1000' name='PDFObj' id='PDFObj'>
</td>
</tr>
</table>
</form>
我尝试使用iframe
和对象以及设置输入类型=&#34;对象&#34;进行嵌入,但我无法使用任何组合。
这甚至可能吗?有更好的方法吗?
答案 0 :(得分:0)
据我所知,您无法直接从HTML中捕获PDF数据。最好的办法是将提交功能添加到PDF中,然后使用服务器端脚本处理生成的FDF数据。
您需要在PDF中添加Submit a Form
按钮,或修改现有按钮。确保PDF中的表单操作在URI后面有#FDF
(例如https://example.com/process.php#FDF
)。
解析数据服务器端很简单。我不确定您使用的是哪种服务器端语言,但这是一个PHP代码段
<?php // process.php, report the data we received
echo '<h2>GET Data</h2>';
foreach( $_GET as $key => $value ) {
echo '<p>Key: '.$key.', Value: '.$value.'</p>';
}
echo '<h2>POST Data</h2>';
foreach( $_POST as $key => $value ) {
echo '<p>Key: '.$key.', Value: '.$value.'</p>';
}
请注意,在网络浏览器中查看时,PDF只能正确地与网络服务器进行交互。
我不知道以编程方式将提交按钮添加到PDF的可靠方法,也不知道可靠的转换方法。你是冥王星之间的摇滚和硬地。
更多信息: