javascript:如何获取radio的值 别用select关键字放在里面,下面radio的,form已经结束了,当然是取不到了 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 循环后有多个radio,而且同名,因此名为"radio"的控件是一个数组,大小按你rs的记录集数目。你这样的情况,形成在页面中直接取数组的值,数组"radio"的值没有定义,因此是取不到。只能该数组对应某个标号的记录 比如radio[0]、radio[1]、...、radio[n],n为rs的记录总数。因此你这个页面要开发一些代码。修改后的代码.....<script>function MM_openBrWindow(...){ ..... // 已定义好的}function getSelVal(){ var obj; obj = document.getElementsByName("select"); //select就是你定义的那个radio的名字 for(var i=0;i<obj.length;i++) { if(obj[i].checked == true) { return obj[i].value; //返回选中的值 break; //退出for循环 } }}</script><form name="f1" method="get" ><td width="82"><a href="javascript:"><img src="../Images/del.gif" width="69" height="21"onClick="MM_openBrWindow('jianli/del.jsp?select='+getSelVal(),'','width=380,height=350')"></a></td> <td width="363"><a href="javascript:"><img border="0" src="../Images/edit.gif" align="middle" onClick="MM_openBrWindow('jianli/resumeedit.jsp?select='+getSelVal(),'','width=380,height=350')"></a></td><%while(rs.next()){%> <td width="70" class=td1><label> <input type="radio" name="select" value="<%=rs.getInt(1)%>" checked> </label></td> <td rowspan="2" bgcolor="eeeeee" width="4"></td> </tr> <tr> <td colspan="12" height="1" bgcolor="eeeeee"></td> </tr></table><%}%></form>说明:1.getSelVal()取的radio选中的值;2.f1.select.value 改成 getSelVal();3.你最好把那个radio默认的checked去掉。因为这是单选按钮,radio不可能全部都为选中状态的。不过,如果把"checked"去掉,那你就需要在函数MM_openBrWindow()加个判断,来判断radio中是否有选中的,你要有选中的东西才能提交。否则,转向的时候select=空 刚才粘贴有点不整洁,呵呵:)function getSelVal(){ var obj; obj = document.getElementsByName("select"); for(var i=0;i<obj.length;i++) { if(obj[i].checked == true) { return obj[i].value; break; } }} 为什么DIV不响应事件? 用javascript或jquery如何获取三个数组的笛卡尔积问题,自己想了两天,实在无能为力了,算法过于复杂。 无奈之“我是一个前端工程师,从没有用过jQuery” 关于jsp用(jsp:forward)转到下一页面的问题 格式化输出日期 关于JS写值班轮流代码,在线等 js完成的拖拽在FF浏览器不能实现,望高手用jquery实现! 菜鸟问一个时间函数~~~~ 我是菜鸟,找高手解释以下,在线等! 求:meizz老大的日历控件的原码? 如何在JS中相加时间? 关于session的问题
function MM_openBrWindow(...)
{
..... // 已定义好的
}
function getSelVal()
{
var obj;
obj = document.getElementsByName("select"); //select就是你定义的那个radio的名字
for(var i=0;i<obj.length;i++)
{
if(obj[i].checked == true)
{
return obj[i].value; //返回选中的值
break; //退出for循环
}
}
}
</script><form name="f1" method="get" >
<td width="82"><a href="javascript:"><img src="../Images/del.gif" width="69" height="21"onClick="MM_openBrWindow('jianli/del.jsp?select='+getSelVal(),'','width=380,height=350')"></a></td>
<td width="363"><a href="javascript:"><img border="0" src="../Images/edit.gif" align="middle" onClick="MM_openBrWindow('jianli/resumeedit.jsp?select='+getSelVal(),'','width=380,height=350')"></a></td>
<%
while(rs.next()){%>
<td width="70" class=td1><label>
<input type="radio" name="select" value="<%=rs.getInt(1)%>" checked>
</label></td>
<td rowspan="2" bgcolor="eeeeee" width="4"></td>
</tr>
<tr>
<td colspan="12" height="1" bgcolor="eeeeee"></td>
</tr>
</table>
<%}%>
</form>说明:
1.getSelVal()取的radio选中的值;
2.f1.select.value 改成 getSelVal();
3.你最好把那个radio默认的checked去掉。因为这是单选按钮,radio不可能全部都为选中状态的。不过,如果把"checked"去掉,那你就需要在函数MM_openBrWindow()加个判断,来判断radio中是否有选中的,你要有选中的东西才能提交。否则,转向的时候select=空
{
var obj;
obj = document.getElementsByName("select");
for(var i=0;i<obj.length;i++)
{
if(obj[i].checked == true)
{
return obj[i].value;
break;
}
}
}