javascript功能按钮始终显示最后一行

时间:2018-10-08 09:30:57

标签: javascript php pdo

如果我单击该按钮,则仅打印表格的最后一行。 我用于显示正确行中的数据并打印该按钮。 table image

我的查询使用PDO php。 此表代码和javascript函数:

<tbody>
    <?php foreach($pembelian_polowijo as $pp){ ?>
    <tr>
        <td><?php echo $pp->nomer; ?></td>
        <td><?php echo $pp->tanggal_pembelian; ?></td>
        <td><?php echo $pp->nama_penjual; ?></td>
        <td><?php echo $pp->nama_barang; ?></td>
        <td><?php echo $pp->berat; ?></td>
        <td><?php echo $pp->harga_beli; ?></td>
        <td><?php echo $pp->berat*$pp->harga_beli; ?></td>
        <td><?php echo $pp->setatus; ?></td>
        <td><button onclick="gg('2');">Print</button>

            <script type="text/javascript">
                var printer = new Recta('8388907235', '1811')

                function gg() {

                    printer.open().then(function () {
                        printer.align('center')
                            .text('<?php echo $pp->nomer; ?>')
                            .bold(false)
                            .text('<?php echo $pp->tanggal_pembelian; ?>')
                            .bold(false)
                            .text('<?php echo $pp->nama_penjual; ?>')
                            .bold(false)
                            .text('<?php echo $pp->nama_barang; ?>')
                            .bold(false)
                            .text('<?php echo $pp->berat; ?>')
                            .bold(false)
                            .text('<?php echo $pp->harga_beli; ?>')
                            .bold(false)
                            .text('<?php echo $pp->berat*$pp->harga_beli; ?>')
                            .bold(false)
                            .cut()
                            .print()
                    })
                }
            </script>
        </td>
    </tr>
    <?php } ?>
</tbody>

1 个答案:

答案 0 :(得分:1)

HTML代码

<td><button onclick="gg( '<?php echo json_encode( $pp ); ?>' );">Print</button>

JavaScript代码

<script type="text/javascript">
                var printer = new Recta('8388907235', '1811')

                function gg( dataForPrint ) {

                    printer.open().then(function () {
                        printer.align('center')
                            .text( dataForPrint.nomer)
                            .bold(false)
                            .text(dataForPrint.tanggal_pembelian)
                            .bold(false)
                            .text(dataForPrint.nama_penjual)
                            .bold(false)
                            .text( dataForPrint.dataForPri )
                            .bold(false)
                            .text( berat )
                            .bold(false)
                            .text( dataForPrint.harga_beli )
                            .bold(false)
                            .text( Number(dataForPrint.berat) * Number(dataForPrint.harga_beli))
                            .bold(false)
                            .cut()
                            .print()
                    })
                }
            </script>