0

我有一个由我们的系统自动生成的订单收据页面。我需要为每个订单号添加条形码。我已经建立了基础,但我遇到了两个问题。

1) 条码每次都使用第一个订单号打印。我需要每个订单在下面打印自己的条形码。(订单按顺序排列,但有时可以跳过订单号)

2) jquery 运行多次,因为系统将在每个订单后放置代码。我无法在每个订单后删除 jquery,所以我怎样才能让它在所有订单都加载到单个文档后只运行一次。

下面是整个订单的一小部分。我使用表格宽度和字体大小来声明我需要的区域,因为系统没有给它们 id 或类。唯一的好处是字体大小 3 从未在其他任何地方使用过,并且与表格宽度 180 相同,所以我相信在这两种情况下我都会好起来的。感谢您的帮助。

jQuery代码

$("table[width='180']").after("<img id='bar_code'");

$('img#bar_code').attr('src', 'http://www.barcodesinc.com/generator/image.php?code=' + $("font[size='3']").children().html() + '&style=197&type=C128B&width=150&height=50&xres=1&font=3');

HTML 代码

    <table width=180 border=0 cellpadding=0 cellspacing=0>
    <tr> 
        <td width=90 align=left colspan="2"><b><font style="font-size:18px;font-weight:bold;">PACKING SLIP</font></b></td>
    </tr>
    <tr> 
        <td width=90 align=left><b>Date:</b></td>
        <td width=90><b>Order#:</b></td>
    </tr>
    <tr> 
        <td width=75 align=left> 05/17/2011 </td>
        <td><font size=3><b>10122</b></font></td>
    </tr>
</table>
<br><br><br>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script>
$("table[width='180']").after("<img id='bar_code'");

$('img#bar_code').attr('src', 'http://www.barcodesinc.com/generator/image.php?code=' + $("font[size='3']").children().html() + '&style=197&type=C128B&width=150&height=50&xres=1&font=3');
</script>

    <table width=180 border=0 cellpadding=0 cellspacing=0>
    <tr> 
        <td width=90 align=left colspan="2"><b><font style="font-size:18px;font-weight:bold;">PACKING SLIP</font></b></td>
    </tr>
    <tr> 
        <td width=90 align=left><b>Date:</b></td>
        <td width=90><b>Order#:</b></td>
    </tr>
    <tr> 
        <td width=75 align=left> 05/17/2011 </td>
        <td><font size=3><b>10123</b></font></td>
    </tr>
</table>
<br><br><br>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script>
$("table[width='180']").after("<img id='bar_code'");

$('img#bar_code').attr('src', 'http://www.barcodesinc.com/generator/image.php?code=' + $("font[size='3']").children().html() + '&style=197&type=C128B&width=150&height=50&xres=1&font=3');
</script>


    <table width=180 border=0 cellpadding=0 cellspacing=0>
    <tr> 
        <td width=90 align=left colspan="2"><b><font style="font-size:18px;font-weight:bold;">PACKING SLIP</font></b></td>
    </tr>
    <tr> 
        <td width=90 align=left><b>Date:</b></td>
        <td width=90><b>Order#:</b></td>
    </tr>
    <tr> 
        <td width=75 align=left> 05/17/2011 </td>
        <td><font size=3><b>10124</b></font></td>
    </tr>
</table>
<br><br><br>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script>
$("table[width='180']").after("<img id='bar_code'");

$('img#bar_code').attr('src', 'http://www.barcodesinc.com/generator/image.php?code=' + $("font[size='3']").children().html() + '&style=197&type=C128B&width=150&height=50&xres=1&font=3');
</script>


    <table width=180 border=0 cellpadding=0 cellspacing=0>
    <tr> 
        <td width=90 align=left colspan="2"><b><font style="font-size:18px;font-weight:bold;">PACKING SLIP</font></b></td>
    </tr>
    <tr> 
        <td width=90 align=left><b>Date:</b></td>
        <td width=90><b>Order#:</b></td>
    </tr>
    <tr> 
        <td width=75 align=left> 05/17/2011 </td>
        <td><font size=3><b>10127</b></font></td>
    </tr>
</table>
<br><br><br>
<script type="text/javascript" src="http://ajax.googleapis.com/ajax/libs/jquery/1.6.1/jquery.min.js"></script>
<script>
$("table[width='180']").after("<img id='bar_code'");

$('img#bar_code').attr('src', 'http://www.barcodesinc.com/generator/image.php?code=' + $("font[size='3']").children().html() + '&style=197&type=C128B&width=150&height=50&xres=1&font=3');
</script>
4

1 回答 1

1

我知道这有点晚了,但我正在浏览未回答的问题,并注意到您忘记关闭图像标签。在你的脚本中,通过改变这个:

$("table[width='180']").after("<img id='bar_code'");

对此:

$("table[width='180']").after("<img id='bar_code'>");

该脚本完美运行...

于 2012-03-07T21:10:08.390 回答