如何在我的自定义顶点上获得“新建”按钮:pageBlockTable for Cases?

时间:2012-08-15 14:15:50

标签: salesforce apex-code visualforce

我有一个自定义案例顶点页面,我使用apex:pageBlockTable来显示我的案例列表。这是代码:

<apex:page standardController="Case" recordSetVar="Case" sidebar="true" showHeader="true">
    <apex:form >
        <apex:pageBlock title="Cases">
              <apex:outputLabel value="View:"/>
              <apex:selectList value="{!filterId}" size="1">
                <apex:actionSupport event="onchange" rerender="cases_table"/>
                <apex:selectOptions value="{!listviewoptions}"/>
              </apex:selectList>
            <apex:pageBlock >
                <apex:pageBlockButtons >
                </apex:pageBlockButtons>
                <apex:pageBlockTable value="{!case}" var="c" rows="50" id="cases_table" >
                    <apex:column >
                        <a target="_parent" href="{!URLFOR($Action.Case.View, c.id)}">{!c.CaseNumber}</a>
                        <apex:facet name="header">Case Number</apex:facet>
                    </apex:column>
                    <apex:column value="{!c.ContactId}" />
                    <apex:column value="{!c.Subject}" />
                    <apex:column value="{!c.Status}" />
                    <apex:column value="{!c.Priority}" />
                </apex:pageBlockTable>
            </apex:pageBlock>
        </apex:pageBlock>
    </apex:form>
    <base target="_parent"/>
</apex:page>

我想在默认案例页面中的apex:pageBlockButtons内部获得一个按钮。当用户单击该按钮时,我希望将用户带到新的“案例”页面。我试过这个:

<apex:commandButton action="{!new}" value="New"/>

但这给了我一个错误。如何制作一个按钮,将我带到新案例页面?

2 个答案:

答案 0 :(得分:3)

试试这个:

<apex:commandButton onclick="window.location.href='{!URLFOR($Action.Case.NewCase)}'" value="New" immediate="true" rerender="blank"/>

重要的是要注意需要rerender标记,否则页面将进行回发。通过使用虚拟重新渲染标记,重定向将起作用。立即避免在点击时运行任何验证规则。

答案 1 :(得分:0)

我有一个自定义Cases apex页面,我使用apex:pageBlockTable来显示我的个案列表。这是它的代码(自定义对象):

<apex:commandButton action="{!URLFOR($Action.Your_Custom_Object__c.New)}" ...>