关于<input type="radio" 值得获取问题?
<s:iteratorvalue="list1"var="question"status="stats"><tr><tdwidth="10%">题目${stats.ind...
<s:iterator value="list1" var="question" status="stats">
<tr>
<td width="10%">题目${stats.index+1}</td>
<td width="50%"><s:property value="question"/></td>
<td width="10%">答案</td>
<td width="30%"><input type="radio" name="select${stats.index}" value="A"/>A
<input type="radio" name="select${stats.index}" value="B"/>B
<input type="radio" name="select${stats.index}" value="C"/>C
<input type="radio" name="select${stats.index}" value="D"/>D</td>
</tr>
</s:iterator> 我把它放在form中,提交时候我怎么在Action中获取到我选中的选项呢? 展开
<tr>
<td width="10%">题目${stats.index+1}</td>
<td width="50%"><s:property value="question"/></td>
<td width="10%">答案</td>
<td width="30%"><input type="radio" name="select${stats.index}" value="A"/>A
<input type="radio" name="select${stats.index}" value="B"/>B
<input type="radio" name="select${stats.index}" value="C"/>C
<input type="radio" name="select${stats.index}" value="D"/>D</td>
</tr>
</s:iterator> 我把它放在form中,提交时候我怎么在Action中获取到我选中的选项呢? 展开
展开全部
可以利用js的方法,具体如下:
function getValue(){
//可以利用js中的二维数组的方式得到迭代器中的所有值
var title = document.getElementsByName('title').innerText;//得到所有的题目;
var radio = document.getElementsByTagName('input')//得到所有的答案
var strValue=new Array();//new一个数组存放题目和对应的答案
var str=' ';
for(var i=0;i<radio.length;i++){
strValue[i]=title[i]+"|"+radio[i].value;//这样可以得到所有回答问题的答案
str+=strValue[i]+",";
}
if(str!=' '){
document.form1.action="getAction?str="+str;//修改form的action属性重新设值
return true;
}else{
return ;
}
}
<form action="" method="post" onsubmit="return getValue()" name="form1">
<s:iterator value="list1" var="question" status="stats">
<tr>
<td width="10%" name="title">题目${stats.index+1}</td>
<td width="50%"><s:property value="question"/></td>
<td width="10%">答案</td>
<td width="30%"><input type="radio" name="select${stats.index}" value="A"/>A
<input type="radio" name="select${stats.index}" value="B"/>B
<input type="radio" name="select${stats.index}" value="C"/>C
<input type="radio" name="select${stats.index}" value="D"/>D</td>
</tr>
</s:iterator>
<input type="submit" value="提交">
</form>
/*在action中通过request.getParamters('str');接受到str后可以这样处理
String[] str = request.getParamters('str').split(",");//拆分成数组
for(int i=0;i<str.length;i++){
String[] strValue = str[i].split("|");//再次拆分数组
system.out.println("题目是:"+strValue[i][0]+"答案是:"+strstrValue[i][1])
}
*/
呵呵,好了,全部是手写,没经过测试但是大致思路是正确的,不足之处还往交流交流,
本人Q 620734263
function getValue(){
//可以利用js中的二维数组的方式得到迭代器中的所有值
var title = document.getElementsByName('title').innerText;//得到所有的题目;
var radio = document.getElementsByTagName('input')//得到所有的答案
var strValue=new Array();//new一个数组存放题目和对应的答案
var str=' ';
for(var i=0;i<radio.length;i++){
strValue[i]=title[i]+"|"+radio[i].value;//这样可以得到所有回答问题的答案
str+=strValue[i]+",";
}
if(str!=' '){
document.form1.action="getAction?str="+str;//修改form的action属性重新设值
return true;
}else{
return ;
}
}
<form action="" method="post" onsubmit="return getValue()" name="form1">
<s:iterator value="list1" var="question" status="stats">
<tr>
<td width="10%" name="title">题目${stats.index+1}</td>
<td width="50%"><s:property value="question"/></td>
<td width="10%">答案</td>
<td width="30%"><input type="radio" name="select${stats.index}" value="A"/>A
<input type="radio" name="select${stats.index}" value="B"/>B
<input type="radio" name="select${stats.index}" value="C"/>C
<input type="radio" name="select${stats.index}" value="D"/>D</td>
</tr>
</s:iterator>
<input type="submit" value="提交">
</form>
/*在action中通过request.getParamters('str');接受到str后可以这样处理
String[] str = request.getParamters('str').split(",");//拆分成数组
for(int i=0;i<str.length;i++){
String[] strValue = str[i].split("|");//再次拆分数组
system.out.println("题目是:"+strValue[i][0]+"答案是:"+strstrValue[i][1])
}
*/
呵呵,好了,全部是手写,没经过测试但是大致思路是正确的,不足之处还往交流交流,
本人Q 620734263
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询