Javascript 显示/保存与代码中没有位置的行关联的NS advanced pdf/html模板时出错

Javascript 显示/保存与代码中没有位置的行关联的NS advanced pdf/html模板时出错,javascript,html,pdf,netsuite,suitescript,Javascript,Html,Pdf,Netsuite,Suitescript,当我将代码写入NS advanced pdf模板时,我开始看到代码中没有反映的错误。关于第13行错误的详细信息:“模板第142列第13行错误。 细节…孩子是不是:忽略 我试图从代码出现的给定行中删除代码,但它没有产生任何效果,即使有对整个行的注释,如果或该行被移动,则会弹出给定的错误 <?xml version="1.0"?><!DOCTYPE pdf PUBLIC "-//big.faceless.org//report" "report-1.1.dtd"> <p

当我将代码写入NS advanced pdf模板时,我开始看到代码中没有反映的错误。关于第13行错误的详细信息:“模板第142列第13行错误。 细节…
孩子是不是:忽略

我试图从代码出现的给定行中删除代码,但它没有产生任何效果,即使有对整个行的注释,如果或该行被移动,则会弹出给定的错误

<?xml version="1.0"?><!DOCTYPE pdf PUBLIC "-//big.faceless.org//report" "report-1.1.dtd">
<pdf>
<head>
    <link name="NotoSans" type="font" subtype="truetype" src="${nsfont.NotoSans_Regular}" src-bold="${nsfont.NotoSans_Bold}" src-italic="${nsfont.NotoSans_Italic}" src-bolditalic="${nsfont.NotoSans_BoldItalic}" bytes="2" />
    <#if .locale == "zh_CN">
        <link name="NotoSansCJKsc" type="font" subtype="opentype" src="${nsfont.NotoSansCJKsc_Regular}" src-bold="${nsfont.NotoSansCJKsc_Bold}" bytes="2" />
    <#elseif .locale == "zh_TW">
        <link name="NotoSansCJKtc" type="font" subtype="opentype" src="${nsfont.NotoSansCJKtc_Regular}" src-bold="${nsfont.NotoSansCJKtc_Bold}" bytes="2" />
    <#elseif .locale == "ja_JP">
        <link name="NotoSansCJKjp" type="font" subtype="opentype" src="${nsfont.NotoSansCJKjp_Regular}" src-bold="${nsfont.NotoSansCJKjp_Bold}" bytes="2" />
    <#elseif .locale == "ko_KR">
        <link name="NotoSansCJKkr" type="font" subtype="opentype" src="${nsfont.NotoSansCJKkr_Regular}" src-bold="${nsfont.NotoSansCJKkr_Bold}" bytes="2" />
    <#elseif .locale == "th_TH"> <!-- in this line error appears -->
        <link name="NotoSansThai" type="font" subtype="opentype" src="${nsfont.NotoSansThai_Regular}" src-bold="${nsfont.NotoSansThai_Bold}" bytes="2" />
    </#if>
    <style type="text/css">table { font-size: 9pt; table-layout: fixed; width: 100%; }
th { font-weight: bold; font-size: 8pt; vertical-align: middle; padding: 5px 6px 3px; background-color: #e3e3e3; color: #333333; padding-bottom: 10px; padding-top: 10px; }
td { padding: 4px 6px; }
b { font-weight: bold; color: #333333; }
</style>
</head>
<body>
</body>
</pdf>

表{字体大小:9pt;表布局:固定;宽度:100%;}
{字体大小:粗体;字体大小:8pt;垂直对齐:中间;填充:5px 6px 3px;背景色:#e3e3;颜色:#333333;填充底部:10px;填充顶部:10px;}
td{padding:4px 6px;}
{字体大小:粗体;颜色:#333333;}

如何删除此错误,或者如何解决问题?

您的错误消息与模板中的实际行不匹配的原因是NetSuite处理高级PDF/HTML模板的方式。有两个库在起作用。首先,您的模板由处理,以便在记录和生成的字段中合并XML文档,然后传递给呈现PDF的引擎。如果BFO阶段出现错误,显示的行号将引用生成的Freemarker输出中的一行,而不是原始模板中的一行

就您遇到的实际错误而言,听起来您的模板有一个
标记作为
的直接子项

<table>
  <tr>
    <p>Problematic p tag (direct child of table row element)</p>
  </tr>
</table>

有问题的p标记(表行元素的直接子级)

您需要添加一个
标记

<table>
  <tr>
    <td>
       <p>Paragraph is now correctly in a table cell (td)</p>
    </td>
  </tr>
</table>

段落现在正确地位于表格单元格(td)中


错误消息与模板中的实际行不匹配的原因是NetSuite处理高级PDF/HTML模板的方式。有两个库在起作用。首先,处理模板以合并记录中的字段并生成XML文档,然后将该文档传递给引擎,引擎呈现如果BFO阶段出现错误,显示的行号将引用生成的Freemarker输出中的一行,而不是原始模板中的一行

就您遇到的实际错误而言,听起来您的模板有一个
标记作为
的直接子项

<table>
  <tr>
    <p>Problematic p tag (direct child of table row element)</p>
  </tr>
</table>

有问题的p标记(表行元素的直接子级)

您需要添加一个
标记

<table>
  <tr>
    <td>
       <p>Paragraph is now correctly in a table cell (td)</p>
    </td>
  </tr>
</table>

段落现在正确地位于表格单元格(td)中


谢谢你的回答。现在我明白了这几行的意思,但问题比我想象的要简单。我把
float:left;
;放在样式中,所有的东西都坏了。这个错误很难找到,因为没有相关的信息。谢谢你的回答。现在我明白了这几行的意思,但问题比我想象的要简单。我把
float:left;
;放在样式中,所有的东西都坏了。如果没有关于这个的信息,这个错误很难找到。