我想从一组单选按钮中获得选定的值。

这是我的HTML:

<div id="rates">
  <input type="radio" id="r1" name="rate" value="Fixed Rate"> Fixed Rate
  <input type="radio" id="r2" name="rate" value="Variable Rate"> Variable Rate
  <input type="radio" id="r3" name="rate" value="Multi Rate" checked="checked"> Multi Rate  
</div>

这是我的js:

var rates = document.getElementById('rates').value;
var rate_value;
if(rates =='Fixed Rate'){
    rate_value = document.getElementById('r1').value;
    
}else if(rates =='Variable Rate'){
    rate_value = document.getElementById('r2').value;
    
}else if(rates =='Multi Rate'){
    rate_value = document.getElementById('r3').value;
}  

document.getElementById('results').innerHTML = rate_value;

我一直没有定义。


当前回答

在php中,这很简单 html页面

男性<输入类型=“收音机” 名称=“收音机” 值=“男性”><br/> 母<输入类型=“收音机” 名称=“收音机” 值=“母”><br/> 其他<输入类型=“无线电” 名称=“无线电” 值=“其他”><br/> <输入类型=“提交”值=“提交”>

从表单到php取值

$radio=$_POST['radio'];<br/>
use php if(isset($_POST['submit']))<br/>
{<br/>
echo "you selected".$radio."thank u";<br/>
}

其他回答

如果按钮在窗体中 var myform = new FormData(getformbywhatever); myform.get(“率”); 上面的QuerySelector是一个更好的解决方案。然而,这种方法很容易理解,特别是如果你对CSS没有任何了解的话。另外,输入字段很可能是在一个表单中。 没有检查,还有其他类似的解决方案,抱歉重复了

您可以使用checked属性来获取该值。

var rates = document.getElementsByName('rate');
var rate_value;
for(var i = 0; i < rates.length; i++){
    if(rates[i].checked){
        rate_value = rates[i].value;
    }
}

使用文档。querySelector('input[type = radio]:checked').value;要获得所选复选框的值,你可以使用其他属性来获取值,如名称=性别等,请通过下面的代码片段,它肯定会对你有帮助,

解决方案

document.mainForm.onclick = function(){ var gender = document.querySelector('input[name = gender]:checked').value; result.innerHTML = 'You Gender: '+gender; } <form id=“mainForm” name=“mainForm”> <输入类型=“收音机”名称=“性别”值=选中“男性”/>小 <输入类型=“收音机”名称=“性别”值=“女性”/>女性 <输入类型=“电台” 名称=“性别” 值=“其他” />其他 </form> <span id=“result”></span>

感谢

<form id="rates">
  <input type="radio" name="rate" value="Fixed Rate"> Fixed
  <input type="radio" name="rate" value="Variable Rate"> Variable
  <input type="radio" name="rate" value="Multi Rate" checked> Multi
</form>

然后……

var rate_value = rates.rate.value;

我使用了jQuery。点击function获得所需的输出:

$('input[name=rate]').click(function(){
  console.log('Hey you clicked this: ' + this.value);

  if(this.value == 'Fixed Rate'){
    rate_value = $('#r1').value;
  } else if(this.value =='Variable Rate'){
   rate_value = $('#r2').value;
  } else if(this.value =='Multi Rate'){
   rate_value = $('#r3').value;
  }  

  $('#results').innerHTML = rate_value;
});

希望能有所帮助。