Разрыв страницы Cfdocumentitem во время цикла дает дополнительную пустую страницу

#coldfusion #coldfusion-9 #cfdocument

#coldfusion #coldfusion-9 #cfdocument

Вопрос:

Я использую CF9 и ColdBox. Что я делаю, так это перебираю запрос и назначаю разрыв страницы в конце с помощью cfdocumentitem pagebreak . Тем не менее, это всегда дает мне дополнительную пустую страницу в конце. Это в значительной степени сводит меня с ума, поэтому я полагаюсь на советы экспертов.

 <cfdocument format="PDF"  overwrite="Yes" localUrl="yes" pageType = "letter">
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
     "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
    <head></head>
    <body>
    <cfquery name="Receipts" dbtype="query">
        SELECT distinct id_number
        FROM rc.RC1
    </cfquery>

    <cfoutput>
    <cfloop query="Receipts">
        <!--- removed for brevity --->
        <cfdocumentitem type="pagebreak" />
    </cfloop>
    </cfoutput>
</body>
</html>
</cfdocument>
  

Ответ №1:

Если вы не хотите отображать разрыв страницы после последнего элемента в цикле, вам нужно явно указать это. Если текущая строка запроса не является последней строкой в запросе, отобразите разрыв страницы.

 <cfloop query="Receipts">
  <cfif Receipts.currentRow NEQ Receipts.recordCount>
    <cfdocumentitem type="pagebreak" />
  </cfif>
</cfloop>