JS 如何获取radio选中后的值及不选择取radio的值
作者:
获取radio选中后的值,这在提交页面经常会使用到的,在本文为大家介绍下不选择也能获取radio的值,具体实现如下,感兴趣的朋友可以参考下
以下是网上摘下的文章(未测试但很规范可以模仿)
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>text</title>
<script>
var chk = 0;
window.onload=function (){
var chkObjs = document.getElementsByName("radio");
for(var i=0;i<chkObjs.length;i++){
if(chkObjs[i].checked){
chk = i;
break;
}
}
}
function check_radio(){
var chkObjs = document.getElementsByName("radio");
for(var i=0;i<chkObjs.length;i++){
if(chkObjs[i].checked){
if(chk == i){
alert("radio值没有改变不能提交");
break;
}
}
}
}
</script>
</head>
<body>
<form action='' method='post' onsubmit='javascript:return check_radio()'>
<input type='radio' value='1' name='radio' checked='checked'>一;
<input type='radio' value='2' name='radio'>二;
<input type='radio' value='3' name='radio'>三;
<input type='radio' value='4' name='radio'>四;
<input type='radio' value='5' name='radio'>五;
<input type=submit value=sub >
</form>
</body>
</html>
下面是不做选择获取radio的值
<input type="radio" name="money" value="1" />美元
<input type="radio" name="money" value="2" />日元
<input type="radio" name="money" value="3" />欧元
原生JS方式:(原生DOM操作会把文本也当做一个节点,所以会有nextSibling)
var 美元 = document.getElementsByName("money")[0].nextSibling.nodeValue;
var 日元 = document.getElementsByName("money")[1].nextSibling.nodeValue;
var 欧元 = document.getElementsByName("money")[2].nextSibling.nodeValue;
jQuery方式
$('input[name="money"]:checked').next('span').html();
<input type="radio" name="money" value="1" checked="checked" /><span>美元</span>
<input type="radio" name="money" value="2" /><span>日元</span>
<input type="radio" name="money" value="3" /><span>欧元</span>
<!--正常的情况下,创建复选框或者单选框会使用label将其链接,比如:-->
<input id="radio1" type="radio" name="money" value="1" /><label for="radio1">美元</label>
以下要选择的:
这个只判断有没有选择
function radioValue(){
var radArr = document.getElementsByName("radiov");
var radValue = "";
//alert(radArr.length);
for(var i=0; i<radArr.length; i++){
//alert(radArr[i].checked+" "+radArr[i].name + " "+ radArr[i].value);
if(radArr[i].checked){
radValue = radArr[i].value;
}
}
if(radValue != null && radValue != ""){
alert(radValue);
}else{
alert("请选择");
}
}
<input type="button" value="测试radio中获取数据" onclick="radioValue();"/>
复制代码 代码如下:
<html>
<head>
<meta http-equiv="Content-Type" content="text/html; charset=gb2312">
<title>text</title>
<script>
var chk = 0;
window.onload=function (){
var chkObjs = document.getElementsByName("radio");
for(var i=0;i<chkObjs.length;i++){
if(chkObjs[i].checked){
chk = i;
break;
}
}
}
function check_radio(){
var chkObjs = document.getElementsByName("radio");
for(var i=0;i<chkObjs.length;i++){
if(chkObjs[i].checked){
if(chk == i){
alert("radio值没有改变不能提交");
break;
}
}
}
}
</script>
</head>
<body>
<form action='' method='post' onsubmit='javascript:return check_radio()'>
<input type='radio' value='1' name='radio' checked='checked'>一;
<input type='radio' value='2' name='radio'>二;
<input type='radio' value='3' name='radio'>三;
<input type='radio' value='4' name='radio'>四;
<input type='radio' value='5' name='radio'>五;
<input type=submit value=sub >
</form>
</body>
</html>
下面是不做选择获取radio的值
复制代码 代码如下:
<input type="radio" name="money" value="1" />美元
<input type="radio" name="money" value="2" />日元
<input type="radio" name="money" value="3" />欧元
原生JS方式:(原生DOM操作会把文本也当做一个节点,所以会有nextSibling)
复制代码 代码如下:
var 美元 = document.getElementsByName("money")[0].nextSibling.nodeValue;
var 日元 = document.getElementsByName("money")[1].nextSibling.nodeValue;
var 欧元 = document.getElementsByName("money")[2].nextSibling.nodeValue;
jQuery方式
复制代码 代码如下:
$('input[name="money"]:checked').next('span').html();
<input type="radio" name="money" value="1" checked="checked" /><span>美元</span>
<input type="radio" name="money" value="2" /><span>日元</span>
<input type="radio" name="money" value="3" /><span>欧元</span>
<!--正常的情况下,创建复选框或者单选框会使用label将其链接,比如:-->
<input id="radio1" type="radio" name="money" value="1" /><label for="radio1">美元</label>
以下要选择的:
这个只判断有没有选择
复制代码 代码如下:
function radioValue(){
var radArr = document.getElementsByName("radiov");
var radValue = "";
//alert(radArr.length);
for(var i=0; i<radArr.length; i++){
//alert(radArr[i].checked+" "+radArr[i].name + " "+ radArr[i].value);
if(radArr[i].checked){
radValue = radArr[i].value;
}
}
if(radValue != null && radValue != ""){
alert(radValue);
}else{
alert("请选择");
}
}
<input type="button" value="测试radio中获取数据" onclick="radioValue();"/>
您可能感兴趣的文章:
- Js得到radiobuttonlist选中值的两种方法(推荐)
- js判断radiobuttonlist的选中值显示/隐藏其它模块的实现方法
- js获取RadioButtonList的Value/Text及选中值等信息实现代码
- javascript RadioButtonList获取选中值
- js中获取jsp表单中radio类型的值简单实例
- JavaScript中获取Radio被选中的值
- js获取 type=radio 值的方法
- 用js的for循环获取radio选中的值
- js 获取radio按钮值的实例
- 用 Javascript 验证表单(form)中的单选(radio)值
- javascript radio值获取代码
- JavaScript获取radio选中值的几种常用方法小结