我正在尝试在提交输入控件提交表单之前打印该表单。我的代码是
<input type="submit" name="printForm"
value="Print Application Form"
onClick="window.print();
if (submitting) {return false;}
else {submitting = true; return true;} ">
('submitting' a global 'var', initialised as 'false' - to stop double sends)
这在Safari、Chrome和IE中都有效,但在Firefox中出现了一个问题-打印完成后表单不会提交-但是,如果Firefox中的打印对话框被取消,表单就会提交。
我已经尝试将window.print移动到一个函数中以隔离它。但这并没有改变结果。
如有任何建议,我们将不胜感激,谢谢
我在这里搜索了所有与window.print相关的东西,浏览了许多问题,但没有找到任何有用的东西。(我还没有读完上千本书!)
发布于 2017-04-17 14:40:17
我找到了答案..。在最初的问题中,javascript都被执行了,但是window.print中的某些东西阻止了表单的实际发送。
解决方案是更改to按钮,并将实际的表单提交移动到javascript中,并将提交定位为紧接在window.print之前(而不是之后!)。这样,表单提交和页面打印都会实际发生。
发布于 2017-04-12 07:12:55
问题可能出在表单操作中。<form action="">
如果在表单提交时加载文件,则在操作中传递该文件的完整路径,而不是相对路径。
https://stackoverflow.com/questions/43361808
复制