0

我正在尝试检查是否使用 JavaScript 检查了单选框,但我似乎无法正确弄清楚。

这是 HTML 代码:

<input type="radio" name="status" id="employed_yes" value="yes">
<input type="radio" name="status" id="employed_no" value="no">

我尝试使用 jQuery 如下:

$(document).ready(function() {
    if($('#employed_yes').is(':checked')) {
        // do something
    }
});

此外,我尝试通过获取元素并检查其“已检查”属性来使用纯 Javascript,但它不起作用。

我期待你的见解!

谢谢!

4

7 回答 7

2

使用 onchange

   $('input[type="radio"]').on('change',function(){
        if($('#employed_yes').is(':checked')) {
          alert("yes");
        }
    });

演示

于 2013-08-07T09:04:33.743 回答
0

尝试使用单选按钮的名称进行检查,例如

if($('input[name="status"]').val() != "") {
    // do something
} else {
    alert("Select an Status");
}
于 2013-08-07T09:01:25.217 回答
0

纯JS:

<input type = "button" value = "What?" name = "wic" onclick = "whatischecked(this.name);" />

点击事件:

function whatischecked(name) {
        var 
            emp = document.getElementById("employed_yes").checked
            nonemp = document.getElementById("employed_no").checked

        if (emp) {
           alert("Employed");
        };

        if (nonemp) {
               alert("Non-Employed");
            };          

        if ((emp == false) & (nonemp == false))
        {
            alert("nothing checked")
        };  
    }
于 2013-08-07T09:57:48.327 回答
0

您的解决方案不起作用,因为当页面加载复选框的默认状态是未选中时,即 jQuery 代码运行时。

您需要在复选框上侦听更改事件,如下所示:

$(document).ready(function() {
    $("#employed_yes").change(function() {
        if(this.checked) {
            document.write("checked");
        }
    });
});

演示:http: //jsfiddle.net/7CduY/

于 2013-08-07T09:06:09.550 回答
0

尝试这个。Hi如果选中任何单选按钮,这将在文档准备就绪时发出警报。如果要检查特定事件,则可以绑定任何事件以进行检查。

$(document).ready(function() {
    if($('input[type=radio]').is(':checked')) {
        alert("Hi");
    }
});
于 2013-08-07T09:08:19.353 回答
0

if($('input:radio:checked').text("yes") { // do something }

从 jQuery 论坛得到这个想法。http://forum.jquery.com/topic/how-to-check-whether-all-radio-buttons-have-been-been-selected

于 2013-08-07T09:08:53.313 回答
0

伙计,我认为您想要,无论是否选中单选按钮,这就是我从您的问题中了解到的

如果是这样的话

$(document).ready(function() {
    $('input[type="radio"]').on('change',function(){
        if($('[name=status]:checked').length) {
          alert("checked");
        }
    });
});

小提琴演示

于 2013-08-07T09:10:53.253 回答