Java 如何分配<;s:收音机>;使用<;s:set>;在struts2中
我试图将单选按钮ans1的值分配给另一个变量Java 如何分配<;s:收音机>;使用<;s:set>;在struts2中,java,jsp,session,struts2,radio,Java,Jsp,Session,Struts2,Radio,我试图将单选按钮ans1的值分配给另一个变量 <s:form action="ques2" namespace="/questions" theme="simple"> Question 1: <s:property value="#session.ques1.question"/><br/><br/> <s:radio list="#session.ques1.option1" name="ans1" value="%{'opt
<s:form action="ques2" namespace="/questions" theme="simple">
Question 1: <s:property value="#session.ques1.question"/><br/><br/>
<s:radio list="#session.ques1.option1" name="ans1" value="%{'option1'}" label="1. "/><br/>
<s:radio list="#session.ques1.option2" name="ans1" value="%{'option2'}" label="2. "/><br/>
<s:radio list="#session.ques1.option3" name="ans1" value="%{'option3'}" label="3. "/><br/>
<s:radio list="#session.ques1.option4" name="ans1" value="%{'option4'}" label="4. "/><br/>
<s:submit name="submit" value=" Next"/>
</s:form>
<s:set var="ans_submit" value="%{#ans1}" scope="session" />
问题1:
但是当我在action类中检索ansu submit
时,它给出了null
我必须将
标签放在
标签之外。因为在我的模型中没有这样定义的变量。
我不想使用javascript 使用地图填充无线电标签
<s:radio name="ans1" list="#{'option1': '1. ','option2': '2. ','option3': '3. ','option4': '4. '}" />
现在,要在另一个操作中从会话中检索此值,可以初始化ans1
属性
ans1 = (String) session.get("ans1");
或者,您可以使用value
属性预设无线电标签中的值
<s:radio name="ans1" list="#{'option1': '1. ','option2': '2. ','option3': '3. ','option4': '4. '}" value="%{#session.ans1}"/>
为什么需要设置此变量?有一组问题
如问题1、问题2、问题3等..如上所述。因此,我需要将答案保持在会话中,以便根据这些答案评估和计算分数(其中有多少是正确的)。我知道我可以使用模型驱动的接口的getModel()
设置这些答案值,但我想在jsp本身上设置这些值。我还可以使用jstl标记。但它只能在按下submit按钮后设置,并且在下一个jsp页面上也是如此我想在立即更改选项时设置此变量的值
。立即是什么意思?您是否在更改选项后立即提交值?我想返回按钮功能。因此,当按下“后退”按钮时,问题会移到上一页,当一个人想要更改上一个答案时,他只能通过更改选项来完成。选项的更改应反映在我的会话变量中。
<s:radio name="ans1" list="#{'option1': '1. ','option2': '2. ','option3': '3. ','option4': '4. '}" value="%{#session.ans1}"/>