用javascript设置单选按钮 radio 为必填......
用javascript设置单选按钮radio为必填.....我自己写了一个,但不知道为什麼不对,.我的qq是571060336,请各位大大救救我/////...
用javascript设置单选按钮 radio 为必填.....
我自己写了一个,但不知道为什麼不对,
.我的qq是571060336,请各位大大救救我///// 展开
我自己写了一个,但不知道为什麼不对,
.我的qq是571060336,请各位大大救救我///// 展开
6个回答
展开全部
看了你的问题,我有几点意见
1、建议你以后创建html元素的时候,name属性和id属性尽量保持一致,除非特殊情况,这个是编码规范
2、写代码的时候尽量写全,比如你的id="times/>(1~10)这里少了一个上引号,如果别人写的代码总是这样马虎,让你改,你要疯掉的
3、按照你的意思是想用一个选择框来控制文本的输入,这里有2种方案的,第一种是用1个checkbox比你上面用2个radio要实用很多,很多时候要考虑合理性和客户体验;如果你想选不同的radio,而要用户做不同的事情,比如选几种情况需要填几种不同的内容就用radiogroup来做
代码如下:
<h3>使用checkbox<h3/>
<div>是否测试:<input type="checkbox" name="test" id="test" checked="checked" /></div>
<div><input type="text" name="times" id="times" /></div>
<div><input type="button" value="提交" onclick="checkdata();"/></div>
<h3>使用radiobox<h3/>
<div>是否测试:<input type="radio" name="A1" id="A1" value="1" checked/>是 <input type="radio" name="A1" id="A1" value="2" />否</div>
<div><input type="text" name="testb" id="testb" /></div>
<div><input type="button" value="提交" onclick="checkradio();"/></div>
<script language="javascript">
<!--
function checkdata() {
if (test.checked && times.value=="") {
alert("文本框必须输入");
}
}
function checkradio() {
for(i=0;i<A1.length;i++) {
if(A1[i].checked==true && A1[i].value==1) {
alert("文本框必须输入");
return;
}
}
}
//-->
</script>
1、建议你以后创建html元素的时候,name属性和id属性尽量保持一致,除非特殊情况,这个是编码规范
2、写代码的时候尽量写全,比如你的id="times/>(1~10)这里少了一个上引号,如果别人写的代码总是这样马虎,让你改,你要疯掉的
3、按照你的意思是想用一个选择框来控制文本的输入,这里有2种方案的,第一种是用1个checkbox比你上面用2个radio要实用很多,很多时候要考虑合理性和客户体验;如果你想选不同的radio,而要用户做不同的事情,比如选几种情况需要填几种不同的内容就用radiogroup来做
代码如下:
<h3>使用checkbox<h3/>
<div>是否测试:<input type="checkbox" name="test" id="test" checked="checked" /></div>
<div><input type="text" name="times" id="times" /></div>
<div><input type="button" value="提交" onclick="checkdata();"/></div>
<h3>使用radiobox<h3/>
<div>是否测试:<input type="radio" name="A1" id="A1" value="1" checked/>是 <input type="radio" name="A1" id="A1" value="2" />否</div>
<div><input type="text" name="testb" id="testb" /></div>
<div><input type="button" value="提交" onclick="checkradio();"/></div>
<script language="javascript">
<!--
function checkdata() {
if (test.checked && times.value=="") {
alert("文本框必须输入");
}
}
function checkradio() {
for(i=0;i<A1.length;i++) {
if(A1[i].checked==true && A1[i].value==1) {
alert("文本框必须输入");
return;
}
}
}
//-->
</script>
展开全部
补充:经验证,IE不支持Div的name属性,所以稍作修改如下:
给你的radio分组,相同name值的radio为一组放在一个div中。
对这些这些div,在check函数中:
var groups=document. getElementsByTagName('div') ;
//var groups=document.getElementById('myform'). getElementsByTagName('div') ; // 假设你的表单id为myform,这样写可以提高程序效率
var gn=0, isChecked=true;
for(var i=0;i<groups.length;i++){
var theRadios=groups[i].childNodes;
for(var j=0;j<theRadios.length;j++){
if(theRadios[j].type=='radio'&&theRadios[j].checked==true){
isChecked =true ;
break;
}
else {
isChecked =false ;
}
}
if(isChecked==false){
groups[i].style.border='solid 2px #F33';
gn++;
}
}
if(gn>0){
alert(gn+'组还没有选择!');return false ;
}
给你的radio分组,相同name值的radio为一组放在一个div中。
对这些这些div,在check函数中:
var groups=document. getElementsByTagName('div') ;
//var groups=document.getElementById('myform'). getElementsByTagName('div') ; // 假设你的表单id为myform,这样写可以提高程序效率
var gn=0, isChecked=true;
for(var i=0;i<groups.length;i++){
var theRadios=groups[i].childNodes;
for(var j=0;j<theRadios.length;j++){
if(theRadios[j].type=='radio'&&theRadios[j].checked==true){
isChecked =true ;
break;
}
else {
isChecked =false ;
}
}
if(isChecked==false){
groups[i].style.border='solid 2px #F33';
gn++;
}
}
if(gn>0){
alert(gn+'组还没有选择!');return false ;
}
本回答被网友采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
checked
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
name得写一样才能达到单选效果。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
QQ发给你了
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询