我必须将jQuery附加到发票上。有时我必须批量打印多个发票。当发生这种情况时,我会为每张发票显示完全相同的jQuery,并且每次创建我不需要的额外元素时它都会运行。是否有一种方法可以让jQuery出现的次数超过一次只有在它最后一次显示在代码中时运行一次?谢谢你的帮助。
示例如下。我以前发过这个帖子,每个人都要求看看我是怎么做的。我不知道如何将代码添加到帖子中,因为它说它太长了。感谢你的帮助。你们真棒。
<table width=180 border=0 cellpadding=0 cellspacing=0>
<tr>
<td class="barcode_needed">10133</td>
</tr>
<!--This section of code is attached to every order so it repeats when each order prints, (this is a simplified version of the code, I need to make it only run the last time it shows up-->
<link rel="stylesheet" type="text/css" href="http://barcode-coder.com/css/style.css?ft=1298939919" />
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-ui-1.7.custom.min.js"></script>
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-barcode-last.min.js"></script>
<script>
$('td.barcode_needed').append('<div class="bcTarget">');
$('.bcTarget').each(function() {
var $this = $(this);
$this.barcode(
'G' + $this.closest('td.barcode_needed').text(),
'code128'
);
});
</script>
<!--End Repeating Code-->
<tr>
<td class="barcode_needed">20133</td>
</tr>
<link rel="stylesheet" type="text/css" href="http://barcode-coder.com/css/style.css?ft=1298939919" />
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-ui-1.7.custom.min.js"></script>
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-barcode-last.min.js"></script>
<script>
$('td.barcode_needed').append('<div class="bcTarget">');
$('.bcTarget').each(function() {
var $this = $(this);
$this.barcode(
'G' + $this.closest('td.barcode_needed').text(),
'code128'
);
});
</script>
<tr>
<td class="barcode_needed">30133</td>
</tr>
<link rel="stylesheet" type="text/css" href="http://barcode-coder.com/css/style.css?ft=1298939919" />
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-1.3.2.min.js"></script>
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-ui-1.7.custom.min.js"></script>
<script type="text/javascript" src="http://barcode-coder.com/js/jquery-barcode-last.min.js"></script>
<script>
$('td.barcode_needed').append('<div class="bcTarget">');
$('.bcTarget').each(function() {
var $this = $(this);
$this.barcode(
'G' + $this.closest('td.barcode_needed').text(),
'code128'
);
});
</script>
</table>
答案 0 :(得分:1)
更改重复模板以包含支票:
<script>
if (typeof alreadyDone === "undefined") {
var alreadyDone = true;
$(document).ready(function() {
$('td.barcode_needed').append('<div class="bcTarget">');
$('.bcTarget').each(function() {
var $this = $(this);
$this.barcode('G' + $this.closest('td.barcode_needed').text(),'code128');
});
});
}
</script>
现在它应该只运行一次。
要尝试的另一件事,我们去的地方去除...
<script>
$('td.barcode_needed').each(function() {
$(this).append('<div class="bcTarget">');
});
$('.bcTarget').each(function() {
$(this).barcode('G' + $(this).closest('td.barcode_needed').text(),'code128');
$(this).removeClass('bcTarget');
$(this).closest('td.barcode_needed').removeClass('barcode_needed');
});
</script>