我有一个php while循环,它遍历一系列打印记录。这很好用。现在我需要添加一个isbn条形码。我有一个类似的程序通过javascript执行此操作,我在这里的函数中使用它,函数是:
<script>
function get_bar() {
var isbn = $('#isbn').val();
$("#barcode").barcode(isbn, "ean13",{barWidth:3.00, barHeight:35, fontSize:20, output:"bmp"});
}
我在while循环中调用它只是在它结束时。它适用于我需要它的第一条记录(输入),但不适用于任何后续记录。此文件最多可包含100页,需要打印出来。这是一个PHP代码示例:
$result = $conn->query("select * from ship_assign where po = '$po' limit 0,10");
$pages = $result->num_rows;
while ($row = $result->fetch_assoc()) {
$isbn10 = $row['isbn10'];
$isbn = $row['isbn13'];
$qty = $row['qty'];
$paid = $row['paid'];
...
?>
<script>
function get_bar() {
var isbn = $('#isbn').val();
$("#barcode").barcode(isbn, "ean13",{barWidth:3.00, barHeight:35, fontSize:20, output:"bmp"});
}
</script>
<div id="page">
<div id="topper">
<input id="isbn" value="<?php echo $isbn;?>" style="width: 200px;" placeholder="ISBN13" />
<script>
get_bar();
</script>
</body>
</html>
<?php
$x++;
} //END OF WHILE STATEMENT
$conn->close();
?>
为了简洁起见,我已经删除了html和php的一部分,因为这一切都有效 如何让这个函数适用于循环的所有迭代?
答案 0 :(得分:4)
PHP是一种服务器端语言。一旦PHP代码完成运行,它将返回它对浏览器所做的所有标记。
换句话说,你无法在php代码中运行javascript函数。
你需要做的是使用php吐出一切然后在页面加载后运行所有的javascript函数。