一组checkbox,radio 取值得到一组数值的问题,那位高手帮忙解决一下

liligang1979 2005-10-23 10:21:37
现在有这样几组checkbox,radio组合
<form name="test" action="">
<tr>
<td><input type="checkbox" name="c1" value="c1">是
<input type="radio" name="r1" value="r1">是 <input type="radio" name="r1" value="否">否
</td></tr>
<tr>
<td><input type="checkbox" name="c2" value="c2">是
<input type="radio" name="r2" value="r2">是 <input type="radio" name="r2" value="否">否
</td></tr>
<tr>
<td><input type="checkbox" name="c3" value="c3">是
<input type="radio" name="r3" value="r3">是 <input type="radio" name="r3" value="否">否
</td></tr>
<tr>
<tr><td><input type="submit" value="提交"></td></tr>
</form>
当复选框被选中时 radio按钮可以选择,提交后可以得到两组字符串checkboxlist,radiolist
例如checkboxlist是"r1,r3",radiolist是"是,否"
或checkboxlist是"r1,r2,r3",radiolist是"是,否,否"等
checkboxlist和radiolist值相对应
那位高手能给在下写出script语句兄弟愿把所有的分值献出
...全文
213 3 打赏 收藏 转发到动态 举报
写回复
用AI写文章
3 条回复
切换为时间正序
请发表友善的回复…
发表回复
warmcool1979 2005-10-23
  • 打赏
  • 举报
回复
这个问题稍微复杂了,顶
梅雪香 2005-10-23
  • 打赏
  • 举报
回复
<script language="JavaScript">
<!--
function chkClk(src){
var rdos=document.getElementsByName("r"+src.name.charAt(1));
var bChk=src.checked
rdos[0].disabled = !bChk;
rdos[1].disabled = !bChk;
rdos[0].click();
}
function doSub(){
var checkboxlist =new Array();
var radiolist =new Array();
for(var i=1;i<4;i++){
if(document.getElementsByName("c"+i)[0].checked==true){
checkboxlist[checkboxlist.length]="r"+i;
var rdo=document.getElementsByName("r"+i);
radiolist[radiolist.length]=rdo[0].checked?"是":"否";
}
}
if(radiolist.length>0){
//把值赋给两个hidden对象
alert(checkboxlist.join(","));
alert(radiolist.join(","));
}
//form.submit();
}
//-->
</script>
<form name="test" action="">
<table border="1">
<tr>
<td><input type="checkbox" name="c1" value="c1" onclick="chkClk(this);">是
<input type="radio" name="r1" value="是" disabled>是 <input type="radio" name="r1" value="否" disabled>否
</td></tr>
<tr>
<td><input type="checkbox" name="c2" value="c2" onclick="chkClk(this);">是
<input type="radio" name="r2" value="是" disabled>是 <input type="radio" name="r2" value="否" disabled>否
</td></tr>
<tr>
<td><input type="checkbox" name="c3" value="c3" onclick="chkClk(this);">是
<input type="radio" name="r3" value="是" disabled>是 <input type="radio" name="r3" value="否" disabled>否
</td></tr>
<tr>
<tr><td>
</table>
<input type="button" onclick="doSub()" value="提交"></td></tr>

</form>
rawjim 2005-10-23
  • 打赏
  • 举报
回复

<form name="test" action="">
<input type="checkbox" name="c1" value="c1" onClick="chk_click(this)" checked>是<br>
<input type="radio" name="r1" value="是" checked>是
<input type="radio" name="r1" value="否">否<br>
<input type="checkbox" name="c2" value="c2" onClick="chk_click(this)" checked>是<br>
<input type="radio" name="r2" value="是" checked>是
<input type="radio" name="r2" value="否">否<br>
<input type="checkbox" name="c3" value="c3" onClick="chk_click(this)" checked>是<br>
<input type="radio" name="r3" value="是" checked>是
<input type="radio" name="r3" value="否">否<br>
<br><input type="button" value="提交" onClick="doSubmit()">
</form>

<script>
function chk_click(el){
var bVal=!el.checked;
if (el.name=="c1"){
document.all.r1[0].disabled=bVal;
document.all.r1[1].disabled=bVal;
}else if (el.name=="c2"){
document.all.r2[0].disabled=bVal;
document.all.r2[1].disabled=bVal;
}else if (el.name=="c3"){
document.all.r3[0].disabled=bVal;
document.all.r3[1].disabled=bVal;
}
}
function doSubmit(){
var str1="";
var str2="";
if (document.all.c1.checked==true){
if (str1==""){
str1 += "r1";
str2 += (document.all.r1[0].checked)?"是":"否";
}else{
str1 += ",r1";
str2 += (document.all.r1[0].checked)?",是":",否";
}
}
if (document.all.c2.checked==true){
if (str1==""){
str1 += "r2";
str2 += (document.all.r2[0].checked)?"是":"否";
}else{
str1 += ",r2";
str2 += (document.all.r2[0].checked)?",是":",否";
}
}
if (document.all.c3.checked==true){
if (str1==""){
str1 += "r3";
str2 += (document.all.r3[0].checked)?",是":",否";
}else{
str1 += ",r3";
str2 += (document.all.r3[0].checked)?",是":",否";
}
}
alert(str1);
alert(str2)
}
</script>

87,992

社区成员

发帖
与我相关
我的任务
社区描述
Web 开发 JavaScript
社区管理员
  • JavaScript
  • 无·法
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧