我有一些单选按钮。我试图使用java脚本检查单选按钮值。但是我得到了未被发现的id的错误。我在html 5中执行以下代码。我没有得到这个值。
function timeout()
{
if (document.getElementById["RadioButton1"].checked)
{
choice = document.getElementById["RadioButton1"].value;
alert('choice');
}
if (document.getElementById["RadioButton2"].checked)
{
choice = document.getElementById["RadioButton2"].value;
alert('choice');
}
if (document.getElementById["RadioButton3"].checked)
{
choice = document.getElementById["RadioButton3"].value;
alert('choice');
}
if (document.getElementById["RadioButton4"].checked)
{
choice = document.getElementById["RadioButton4"].value;
alert('choice');
}
var c = document.getElementById("label1").value;
}
答案 0 :(得分:1)
一组单选按钮应该都具有相同的名称。因此,获取集合,找到已检查的集合并读取其值:
function getValue(name) {
var rbs = document.getElementsByName(name);
for (var i=0, iLen=rbs.length, i<iLen; i++) {
if (rbs[i].checked) {
return rbs[i].value;
}
}
}
如果控件是一种形式(通常是这种形式),并且您有对该表单的引用,则可以使用以下命令获取该集:
var rbs = formRef[name];
答案 1 :(得分:1)
如果您对所有单选按钮使用相同名称(在相同的单选按钮组中),则
<input type="radio" id="RadioButton1" name="radio_group" value="1"/>
<input type="radio" id="RadioButton2" name="radio_group" value="2"/>
<input type="radio" id="RadioButton3" name="radio_group" value="3"/>
您可以使用jQuery在一行中获取所选(已选中的单选按钮值)。
var Val = $("input[name=radio_group]:checked").val();
答案 2 :(得分:1)
$(document).ready(function(){
$('#btnsubmit').click(function(){
var result = $('input[type="radio"]:checked');
if (result.length > 0) {
$('#result').html(result.val()+" is Checked");
}else{
$('#result').html(" No radio button is Checked");
}
});
});
&#13;
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<input type="radio" name="gender" value="Male"> Male
<input type="radio" name="gender" value="Female"> Female
<input type="submit" id="btnsubmit" value="submit">
<div id="result"></div>
&#13;
答案 3 :(得分:0)
您的代码中可见的主要问题是语法错误。
document.getElementById
是一个方法,而不是一个对象,所以你应该用parens来调用它:
// --------------------v--------------v
document.getElementById("RadioButton1").value
答案 4 :(得分:0)
希望这有助于伙伴。
$( "input" ).on( "click", function() {
alert($( "input:checked" ).val() + " is checked!" );
});
<强> Fiddle 强>
答案 5 :(得分:0)
这是对@yogi评论的回答( 我们如何为复选框实现相同的功能?)
$(document).ready(function(){
$('#btnsubmit').click(function(){
var result = $('input[type="checkbox"]:checked');
if (result.length > 0) {
var resultstring = result.length +"checkboxes checked <br>";
result.each(function(){
resultstring += $(this).val()+" <br>"; //append value to exsiting var
});
$('#result').html(resultstring);
}else{
$('#result').html(" No checkbox is Checked");
}
});
});
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.8.3/jquery.min.js"></script>
<input type="checkbox" name="skill" value="Java"> Java
<input type="checkbox" name="skill" value="Jquery"> Jquery
<input type="checkbox" name="skill" value="PHP"> PHP
<input type="submit" id="btnsubmit" value="submit">
<div id="result"></div>