Измените свой повторяющийся шаблон, чтобы включить проверку:
<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>