2

我在 force.com 顶点模板的 pageBlockSection 中有一个表格。这工作正常,直到我尝试在我的一个单元格内使用 outputText 标记。当我使用这个标签时,额外的单元格和行被添加到标记中。但是,如果我不将表格嵌套在 pageBlockSection 标记内,则不会添加此类单元格。

我是否错误地使用了 outputText,或者 force.com 上是否存在错误?

这是将重现此问题的最小标记:

<apex:pageBlock title="My Page Block">    
  <apex:pageBlockSection title="My Section">   
    <table>
      <tr><th>1</th><th>2</th></tr>
      <tr>
        <td>
          <apex:outputText value="{0}">
            <apex:param value="one" />
          </apex:outputText>
        </td>
        <td>
          <apex:outputText value="{0}">
            <apex:param value="two" />
          </apex:outputText>
        </td>
      </tr>
    </table>
  </apex:pageBlockSection>    
</apex:pageBlock>

这是 force.com 呈现的输出:

<table>
  <tbody>
    <tr><th>1</th><th>2</th></tr>
    <tr>
      <td></td>
      <td colspan="2" class="dataCol  first ">one</td>
    </tr>
    <tr>
      <td colspan="2" class="dataCol "></td>
      <td></td>
      <td colspan="2" class="dataCol ">two</td>
    </tr>
    <tr>
      <td colspan="2" class="dataCol  last "></td>
    </tr>
  </tbody>
</table>
4

2 回答 2

4

我不能说这实际上是否是一个错误,但我相信这是由<apex:pageBlockSection>这些自动将嵌套内容添加到表格中引起的,然后与您自己的表格发生冲突。

我建议要么删除<apex:pageBlockSection>并将您的表格直接放入<apex:pageBlock>,或者删除您自己的表格并利用该<apex:pageBlockSectionItem>元素:

<apex:pageBlock title="My Page Block">    
  <apex:pageBlockSection title="My Section">
    <apex:pageBlockSectionItem >
      1
    </apex:pageBlockSectionItem>
    <apex:pageBlockSectionItem >
      2
    </apex:pageBlockSectionItem>
    <apex:pageBlockSectionItem >
      <apex:outputText value="{0}">
        <apex:param value="one" />
      </apex:outputText>
    </apex:pageBlockSectionItem>
    <apex:pageBlockSectionItem >
      <apex:outputText value="{0}">
        <apex:param value="two" />
      </apex:outputText>
    </apex:pageBlockSectionItem>
  </apex:pageBlockSection>
</apex:pageBlock>
于 2012-05-30T00:08:12.900 回答
1

通过将表格放在 outputPanel 标记中,我能够解决这个问题。

<apex:pageBlockSection>
   <apex:outputPanel>
      <table>
      </table>
   </apex:outputPanel>
</apex:pageBlockSection>
于 2014-12-09T14:44:37.893 回答