javascript - 打印机脚本运行后 Javascript 自动提交未执行
问题描述
我是一个 JavaScript 新手。我有一个名为 sendToQuickPrinter() 的打印机函数,它打印得很好,但是当该脚本完成时,我需要自动提交表单以返回我的“cart.php”页面。我想我真的很接近。请帮忙。
<script>
function sendToQuickPrinter(){
var text =
"<CENTER><MEDIUM2><?php echo $shop_name ?><BR>" +
"<CENTER><?php echo $display_date ?> <?php echo $display_time ?><BR><BR>" +
"Description Price<BR>" +
"<?php $i=0;while($i < $print_count){$i=$i+1; echo $p_name_array[$i].';; ;;'.$transaction_qty_array[$i].' @ '.number_format($p_price_array[$i],2).'<BR>';} ?>" +
"<BR>" +
"<CENTER>Sub-total $<?php echo number_format($subtotal,2) ?><BR>" +
"<CENTER>Tax $<?php echo number_format($subtax,2) ?><BR>" +
"<CENTER>Total $<?php echo number_format($item_total,2) ?><BR>" +
"<BR>" +
"<CENTER>Thank you for shopping with us, we appreciate your business!<BR>" +
"<CENTER><MEDIUM2> Have a great day!<BR>" +
"<BR>" +
"<CUT>" +
"DRAWER";
var textEncoded = encodeURI(text);
window.location.href="quickprinter://"+textEncoded;
document.frm2.submit() // !!!important- I auto submit frm2 below
}
sendToQuickPrinter();
</script>
<form action="cart.php" name="frm2" method="post">
<input type="hidden" name="longitude" id="getlon" />
<input type="hidden" name="latitude" id="getlat" />
<input type="hidden" name="shop_name" value="<?php echo $shop_name ?>" />
</form>
解决方案
改变document.frm2.submit()
_document.forms["frm2"].submit()
function sendToQuickPrinter(){
var text =
"<CENTER><MEDIUM2><?php echo $shop_name ?><BR>" +
"<CENTER><?php echo $display_date ?> <?php echo $display_time ?><BR><BR>" +
"Description Price<BR>" +
"<?php $i=0;while($i < $print_count){$i=$i+1; echo $p_name_array[$i].';; ;;'.$transaction_qty_array[$i].' @ '.number_format($p_price_array[$i],2).'<BR>';} ?>" +
"<BR>" +
"<CENTER>Sub-total $<?php echo number_format($subtotal,2) ?><BR>" +
"<CENTER>Tax $<?php echo number_format($subtax,2) ?><BR>" +
"<CENTER>Total $<?php echo number_format($item_total,2) ?><BR>" +
"<BR>" +
"<CENTER>Thank you for shopping with us, we appreciate your business!<BR>" +
"<CENTER><MEDIUM2> Have a great day!<BR>" +
"<BR>" +
"<CUT>" +
"DRAWER";
var textEncoded = encodeURI(text);
window.location.href="quickprinter://"+textEncoded;
document.forms["frm2"].submit() // !!!important- I auto submit frm2 below
}
推荐阅读
- git - 无法在 Gitlab 中的此项目中创建受保护的分支
- angular - 在星云步进器的任何一步中移动
- mysql - 使用 any_value 后也得到错误 ORDER BY 子句的表达式 #1 不在 GROUP BY 子句中并且包含非聚合列
- java - 线程“AWT-EventQueue-0”中的异常 java.lang.NoSuchMethodError: org.apache.xmlbeans.XmlOptions.put(Ljava/lang/Object;)V
- c# - 如何设置,如果循环达到最大数量,它会重新开始
- java - 如何将字符串转换为 java.sql.Date?
- node.js - 如何使用 PostgreSQL 保存用户
- java - 检查项目中的所有类是否都有特定的注释
- instagram - 嵌入在 HTML 网页中的 Instagram Live Feed?
- pandas - 绘制从时间序列分布在几个月内的每日平均值