0

在机会页面上有一个自定义按钮。自定义对象和机会页面配置了新页面和编辑页面而不是 VF 的页面布局。我想实现以下目标:1)第一次单击该按钮时希望它打开自定义对象的“新”页面. 第二次打开它应该打开“编辑”页面。2)我还希望能够将 2 个或更多参数从机会页面传递到新/编辑页面,主要用于新页面。

3) 在自定义对象页面上的“保存”上,希望它重定向到机会视图页面。

请你能给我提供示例 javascript 或更好的方法。感谢以下 Javascript,我遇到了问题:

var oppId = "{!Opportunity.Id}"; 
If ({!Opportunity.PQQ__c})
{!URLFOR($Action.PQQ__c.New, null,
[

"PQQ__c.Name"="{!Opportunity.Name}",
"PQQ__c.Opportunity__c"="{!Opportunity.Id}",
"save"="1",
 "retURL"=URLFOR($Action.Opportunity.View, oppId)
],
true)}

else{{!URLFOR($Action.PQQ__c.Edit, null,
[

"PQQ__c.Name"="{!Opportunity.Name}",
"PQQ__c.Opportunity__c"="{!Opportunity.Id}",
"save"="1",
"retURL"=URLFOR($Action.Opportunity.View, oppId)
],
true)}
4

1 回答 1

1

像这样传递参数:

window.location = "apex/yourCustomPage?param1={!Opportunity.Id}&param2={!Opportunity.Name}";

在 visualforce 页面上,您可以像这样直接访问这些参数:

{!$CurrentPage.parameters.param1}

在控制器中:

if (ApexPages.currentPage().getParameters().containsKey('param1'))
{
    yourVar = ApexPages.currentPage().getParameters().get('param1');
}

像这样打开新窗口:

window.open("apex/yourCustomPage?param1={!Opportunity.Id}&param2=edit";
于 2012-08-07T15:14:35.353 回答