我想添加两个数字,在一个虚页的文本框中给出。我想通过点击第一页上的按钮(添加按钮)将结果打印在另一个页面中。如何链接另一个visualforce页面的一个visualforce页面?
请帮我做到这一点....
感谢,
我想添加两个数字,在一个虚页的文本框中给出。我想通过点击第一页上的按钮(添加按钮)将结果打印在另一个页面中。如何链接另一个visualforce页面的一个visualforce页面?
请帮我做到这一点....
感谢,
您可以通过路由到Visualforce下一个页面,传递要显示的参数值做到这一点。像这样的事情在顶点应该工作:
PageReference gotoPage()
{
PageReference pr = Page.YourSecondVFPage;
pr.getParameters().put('secondnumber', '' + this.secondNumber);
pr.setRedirect(true);
return pr;
}
然后在Visualforce:
<apex:commandButton value="Go!" action="{!gotoPage}"/>
我想你可能需要使用两个页面上相同的控制器试试。这样你就不必传递所有这些数据,假设你不仅仅需要几个字段来维护,作为url参数,或者如果你不需要的话,必须在某处存储数据。
如果这两个网页都使用相同的控制器,当你重定向使用PageReference用户确保重定向值设置为假,否则的Salesforce将其视为一个新的请求,并与的一个新的实例启动页面控制器。
下面的示例代码让用户在字段中键入一些文本,然后当单击打印视图时,它使用相同的信息呈现PDF。没有数据被保存到数据库。
控制器
public with sharing class MyController {
public string MyData {get;set;}
public MyController() {
MyData = '';
}
public PageReference printView() {
PageReference oPageRef = Page.MyPage2;
oPageRef.setRedirect(false);
return oPageRef;
}
}
第1页:
<apex:page controller="MyController">
<apex:sectionheader title="Test" subtitle="My Page"/>
<apex:form id="formData">
<apex:pageBlock title="My Data">
<apex:pageBlockButtons >
<apex:commandButton value="Printable View" action="{!printView}" />
</apex:pageBlockButtons>
<apex:pageBlockSection >
<apex:pageBlockSectionItem >
<apex:outputLabel value="My Data"/>
<apex:inputTextArea value="{!MyData}" />
</apex:pageBlockSectionItem>
</apex:pageBlockSection>
</apex:pageBlock>
</apex:form>
</apex:page>
第2页:
<apex:page controller="MyController"
renderAs="pdf">
{!MyData}
</apex:page>