如何用JavaScript取得Radio被选中的值
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何用JavaScript取得Radio被选中的值相关的知识,希望对你有一定的参考价值。
参考技术A 思路:在html中获取被选中的radio的值,即用getElementsByName() 方法可返回带有指定名称的对象的集合进行判断。步骤如下:
radio代码片断:
<input type="radio" name="a1" value="1"/>正确
<input type="radio" name="a1" value="0" />错误
js代码如下:
var b1= document.getElementsByName('a1');
for (var i = 0; i < b1.length; i++)
if (b1[i].checked == true) //如果选中,下面的alert就会弹出选中的值
alert(b1[i].value);
定义和用法
getElementsByName() 方法可返回带有指定名称的对象的集合。
语法
document.getElementsByName(name)
该方法与 getElementById() 方法相似,但是它查询元素的 name 属性,而不是 id 属性。
另外,因为一个文档中的 name 属性可能不唯一(如 HTML 表单中的单选按钮通常具有相同的 name 属性),所有 getElementsByName() 方法返回的是元素的数组,而不是一个元素。本回答被提问者采纳
Jquery实际应用,判断radio,selelct,checkbox是否选中及选中的值
jquery取radio单选按钮的值 $("input[name=‘items‘]:checked").val(); 另:判断radio是否选中并取得选中的值 如下所示: function checkradio(){ var item = $(":radio:checked"); var len=item.length; if(len>0){ alert("yes--选中的值为:"+$(":radio:checked").val()); } } jquery radio取值,checkbox取值,select取值,radio选中,checkbox选中,select选中,及其相关 获取一组radio被选中项的值 var item = $(‘input[name=items][checked]‘).val(); 获取select被选中项的文本 var item = $("select[name=items] option[selected]").text(); select下拉框的第二个元素为当前选中值 $(‘#select_id‘)[0].selectedIndex = 1; radio单选组的第二个元素为当前选中值 $(‘input[name=items]‘).get(1).checked = true; 获取值: 文本框,文本区域:$("#txt").attr("value"); 多选框checkbox:$("#checkbox_id").attr("value"); 单选组radio: $("input[type=radio][checked]").val(); 下拉框select: $(‘#sel‘).val(); 控制表单元素: 文本框,文本区域:$("#txt").attr("value",‘‘);//清空内容 $("#txt").attr("value",‘11‘);//填充内容 多选框checkbox: $("#chk1").attr("checked",‘‘);//不打勾 $("#chk2").attr("checked",true);//打勾 if($("#chk1").attr(‘checked‘)==undefined) //判断是否已经打勾 单选组radio: $("input[type=radio]").attr("checked",‘2‘);//设置value=2的项目为当前选中项 下拉框select: $("#sel").attr("value",‘-sel3‘);//设置value=-sel3的项目为当前选中项 $("<option value=‘1‘>1111</option><option value=‘2‘>2222</option>").appendTo("#sel")//添加下拉框的option $("#sel").empty();//清空下拉框 刚开始接触jquery,很多东西不熟悉 在用$("#id")来获得页面的input元素的时候,发现$("#id").value不能取到值 后来终于在伟大的百度帮助下,找到了问题的原因: $("")是一个jquery对象,而不是一个dom element value是dom element的属性 jquery与之对应的是val val() :获得第一个匹配元素的当前值。 val(val):设置每一个匹配元素的值。 所以,代码应该这样写: 取值:val = $("#id")[0].value; 赋值: $("#id")[0].value = "new value"; 或者$("#id").val("new value"); 或者这样也可以:val = $("#id").attr("value"); jQuery中each非常好用,常用它取代javascript的for循环 例如在一个function里有一个each,在each里某种条件 成立的话,就把这个function返回true或者false function methodone(){ .... $.each(array,function(){ if(条件成立){ return true; } }); .... } 结果发现老是不对。 后来查找资料才发现,在each代码块内不能使用break和continue,要实现break和continue的功能的话,要使用其它的方式 break----用return false; continue --用return ture; 所以当我在each里想使用return true给这个function返回时,其实只是让each继续执行而以 连each都没有中断,所以function也就不能return了 另:判断radio是否选中并取得选中的值 如下所示: function checkradio(){ var item = $(":radio:checked"); var len=item.length; if(len>0){ alert("yes--选中的值为:"+$(":radio:checked").val()); } }
以上是关于如何用JavaScript取得Radio被选中的值的主要内容,如果未能解决你的问题,请参考以下文章