Warning: file_get_contents(/data/phpspider/zhask/data//catemap/4/jsp/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 如何分配<;s:收音机>;使用<;s:set>;在struts2中_Java_Jsp_Session_Struts2_Radio - Fatal编程技术网

Java 如何分配<;s:收音机>;使用<;s:set>;在struts2中

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

我试图将单选按钮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="%{'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}"/>