4

salesforce が提供するスタイルでテーブルを作成することに成功しました。(マウスオーバーなどで強調表示されたもののように)

しかし、列の値をリンクにして、オブジェクトの詳細情報を表示したいと思います。独自の Visualforce ページを作成しない場合、テーブルは見栄えがよく、列の値 (レコード) はすべてハイパーリンクされていますが、visualforce apex コードからそれを行う方法がわかりません。

pageBlockTable と列の定義には、属性やハイパーリンクを作成するものがないようです。

http://www.salesforce.com/us/developer/docs/pages/Content/pages_compref_pageBlockTable.htm
http://www.salesforce.com/us/developer/docs/pages/Content/pages_compref_column.htm

<apex:pageBlock title="test">
    <apex:pageBlockTable value="{!workObj}" var="item">
        <!-- below needs to be hyperlink -->
        <apex:column value="{!item.name}" /> 
    </apex:pageBlockTable>
</apex:pageBlock>

以下のように良いデザインを捨てることで目標を達成できましたが、上記のコードを保持したいと思います。

これは機能しますが、セールスフォース スタイルは適用されません。

 <apex:pageBlock title="my test title" >    
            <apex:dataTable value="{!workObj}" var="wn" cellpadding="2" cellspacing="2">
                <apex:column>
                    <apex:facet name="header">仕事名一覧&lt;/apex:facet>
                    <apex:form >
                        <apex:commandLink value="{!wn.name}" />
                    </apex:form>
                </apex:column>
            </apex:dataTable>
    </apex:pageBlock>
4

1 に答える 1

17

の代わりに<apex:column value="{!item.name}" />、列の本文で次のようにしてみてください。

<apex:pageBlock title="test">
        <apex:pageBlockTable value="{!workObj}" var="item">
         <apex:column>
              <apex:outputLink value="{!item.name}">{!item.name}</apex:outputLink>
         </apex:column>
    <apex:pageBlock title="test">
<apex:pageBlockTable value="{!workObj}" var="item">
于 2010-11-10T10:07:42.640 に答える