JavaScript获取radio选中值的几种常用方法小结
投稿:shichen2014
这篇文章主要介绍了JavaScript获取radio选中值的几种常用方法,结合实例形式总结分析了javascript获取radio选中值的常见实现方法与操作注意事项,需要的朋友可以参考下
一、JS获取radio选中的值
当我们需要在网页中获取radio选中的值时,可以通过以下几种方法来实现:
1. 使用document.getElementsByName获取radio选中的值
<script> function getRadioValue(){ var radios = document.getElementsByName('sex'); for(var i=0; i<radios.length; i++){ if(radios[i].checked){ alert("您选择的是:" + radios[i].value); break; } } } </script> <body> <input type="radio" name="sex" value="男" checked>男 <input type="radio" name="sex" value="女">女 <br /> <input type="button" value="确定" onclick="getRadioValue()"> </body>
上面的代码中,使用document.getElementsByName获取到name为“sex”的所有radio元素,然后遍历这些元素,通过checked属性获取选中的值。
2. 使用document.querySelector获取radio选中的值
<script> function getRadioValue(){ var radio = document.querySelector('input[name="sex"]:checked'); alert("您选择的是:" + radio.value); } </script> <body> <input type="radio" name="sex" value="男" checked>男 <input type="radio" name="sex" value="女">女 <br /> <input type="button" value="确定" onclick="getRadioValue()"> </body>
上面的代码中,使用document.querySelector获取name为“sex”且被选中的radio元素。如果没有选中任何一个,则返回null。
3. 使用jQuery获取radio选中的值
<script src="https://cdn.bootcdn.net/ajax/libs/jquery/3.5.1/jquery.min.js"></script> <script> $(function(){ $('input[name="sex"]').click(function(){ var value = $('input[name="sex"]:checked').val(); alert("您选择的是:" + value); }); }); </script> <body> <input type="radio" name="sex" value="男" checked>男 <input type="radio" name="sex" value="女">女 </body>
上面的代码中,使用jQuery获取name为“sex”且被选中的radio元素,并获取其value属性。
二、JS获取radio选中的值的注意点
在使用JS获取radio选中的值时,需要注意以下几点:
1. 只能选择一个
radio只能选择一个,如果选中了多个,则会以最后选中的为准。因此,在JS中也只需获取被选中的一个。
2. 必须设置name属性
对于一组radio,必须设置相同的name属性,这样才能标识为同一组。
3. 必须设置value属性
对于每个radio,必须设置value属性,才能获取其值。
三、JS获取radio选中的值的兼容性问题
不同的浏览器对于JS获取radio选中的值的兼容性也不同。以下是一些常见的兼容性问题及解决方法:
1. IE6、7不能识别document.getElementsByName
解决方法:通过在name属性前加“.”或“#”来使用document.querySelectorAll来代替document.getElementsByName。
var radios = document.querySelectorAll('input[name="sex"]');
2. Firefox、Chrome、Safari不能识别document.all
解决方法:使用document.getElementById或document.getElementsByTagName来代替。
var radios = document.getElementsByName('sex'); //替换为 var radios = document.getElementsByTagName('input');
3. 获取的值为“on”
解决方法:改为获取checked属性的值。
var value = radio.value; //替换为 var value = radio.checked;
四、总结
通过上面的内容,我们详细的了解了JS获取radio选中的值的几种方法,以及其注意点和兼容性问题。在实际开发中,应根据具体情况选择不同的方法来实现,以保证代码的简洁和稳定性。
您可能感兴趣的文章:
- Js得到radiobuttonlist选中值的两种方法(推荐)
- js判断radiobuttonlist的选中值显示/隐藏其它模块的实现方法
- js获取RadioButtonList的Value/Text及选中值等信息实现代码
- javascript RadioButtonList获取选中值
- js中获取jsp表单中radio类型的值简单实例
- JavaScript中获取Radio被选中的值
- js获取 type=radio 值的方法
- JS 如何获取radio选中后的值及不选择取radio的值
- 用js的for循环获取radio选中的值
- js 获取radio按钮值的实例
- 用 Javascript 验证表单(form)中的单选(radio)值
- javascript radio值获取代码