检查单选按钮是否已选中,无法正常工作

jar*_*rab 0 html javascript forms

当我检查一个单选按钮时,它返回false选项,它应该返回该值

<form name="formulario" action="accion.php" method="post">
    <input type="radio" name="opcion" value="1">Opcion 1
    <input type="radio" name="opcion" value="2">Opcion 2
    <input type="button" name="Enviar" value='eviar' onclick="enviar();">
</form>
<script>
function enviar(){
    var di = document.getElementsByName('opcion');
    for(i=0; i <di.length; i++){
        if(di[i].checked==true){
            valorSeleccionado = di[i].value;
            alert(valorSeleccionado);
        }
        if(di[i].checked==false){
            alert('you didn´t choose a option');
        }
    }
}
</script>
Run Code Online (Sandbox Code Playgroud)

j08*_*691 7

试试这个:

function enviar() {
    var di = document.getElementsByName('opcion');
    var valid = false;
    for (i = 0; i < di.length; i++) {
        if (di[i].checked == true && !valid) {
            valorSeleccionado = di[i].value;
            valid = true;
            alert(valorSeleccionado);
        }
    }
    if (!valid) {
        alert('you didn´t choose a option');
    }
}
Run Code Online (Sandbox Code Playgroud)

jsFiddle例子

它只是通过单选按钮运行并检查是否已选中.如果是这样,它设置一个标志并警告该值,如果没有,则警告错误.