[SEAM] 两个页面来回传参...
Mrpublic
2009-04-23
有两个页面 A 与 B 我想在A中点“计算公式”或“条件”就跳到B中,在B中经过计算器编辑后把结果显示到Textarea中后,点确定后再把值给A中的“计算公式”或“条件”。。。
各位大虾怎么弄呀,我下面的方法不行呀??? 在A 中 有一个表单: <h:form> ... <h:outputLabel value="計算公式:" /> <h:inputText id="a" value="#{salaryHome.instance.formula}" size="80"/> <s:button value="計算公式" view="/B.xhtml"/> <h:outputLabel value="條件:" /> <h:inputText value="#{salaryHome.instance.condition}" size="80"/> <s:button value="條件" view="/B.xhtml" /> ... </h:form> 在B中: <h:form> ... <h:inputTextarea value="#{calculator.var}"/> <s:button value="確定" view="/A.xhtml"> <a4j:actionparam name="express" value="#{calculator.var}" assignTo="#{salaryHome.instance.formula}"/> //测试,把其传到计算公式中 </s:button> ... </h:form> ps:把s:button 改為 a4j:commandButton就好了, 新问题: <a4j:commandButton reRender="a" value="确定" action="#{calculator.goBack}"> 当我点确定进入A页面时,没有马上得到B传过来的值,而是得到先前的值,当我返回B页面时再点确定时,就能得到传的值了。 其中 goBack是就是一个return A页面的地址 |
|
Mrpublic
2009-04-23
我加了同级目录中加了一个B.page.xml
其内容为: ... <begin-conversation join="true" /> ... 还是不行。从B跳回A中还是没有值 |
|
sxlkk
2009-04-23
从a到b有值吗,b能把计算结果显示到textarea中吗,只是从b返回给a时出现的问题吗
这个<h:inputTextarea value="calculator.var"/> 没有#{}包含 |
|
Mrpublic
2009-04-23
呵呵,笔错,
代码里是写的 <h:inputTextarea value="#{calculator.var}"/> 从A到B是没有传值,但我想让其传一个值,以便告知B传值到A时,知道是传给计算公式,还是传给条件 呵呵,现在首要问题就是我的assignTo="#{salaryHome.instance.formula}"怎么没有把值传给A中的<h:inputText value="#{salaryHome.instance.formula}" size="80"/> |
|
Mrpublic
2009-04-23
还是有其它方法点B中的确定后就把值传给A中了呢?
|
|
sxlkk
2009-04-23
《s:botton》好像是不提交表单,你换个标签,用<h:commandLink>或者<s:link>这些可以提交表单
|
|
Mrpublic
2009-04-23
還是不行,是不是我傳參的方法不行。有沒有其它方法傳參呀
assignTo="#{salaryHome.instance.formula}" 是不是這個的問題? 在A中 <h:inputText value="#{salaryHome.instance.formula}" size="80"/> salaryHome的問題?? |
|
Mrpublic
2009-04-23
如果用<f:param>那A中應該怎么接呀?
<s:link value="ok" view="/A.xhtml"> <f:param name="tt" value="#{calculator.var}"/> </s:link> |
|
sxlkk
2009-04-23
Mrpublic 写道 如果用<f:param>那A中應該怎么接呀?
<s:link value="ok" view="/A.xhtml"> <f:param name="tt" value="#{calculator.var}"/> </s:link> Map requestParams = FacesContext.getCurrentInstance().getExternalContext().getRequestParameterMap(); String tt = (String) requestParams.get("tt"); |
|
Mrpublic
2009-04-23
哦 ,謝謝啦,,我再試試
|