需要按钮单击时出现错误消息

时间:2013-03-07 15:35:52

标签: jquery button radio-button

我已经获得了一个用户必须选择大学校园的作业,然后单击“继续”按钮。我唯一无法工作的是,当没有选择单选按钮并单击继续按钮时,应该是一条错误消息,指出'您没有选择大学校园,请再试一次。

我有其他一切工作,但这个错误代码。我似乎无法得到它。出现一条错误消息,显示“未定义”,它来自按钮的单击功能。有人可以帮忙吗?

<html>
<head>
    <style>
        input, label { line-height: 1.5em; }
    </style>
    <script src="http://code.jquery.com/jquery-latest.js"></script>
</head>
<body>
    <form>
        <div>
            <input type="radio" name="university" value="Ah, we are not on the same site" id="Belfast">
            <label for="Belfast">Belfast</label>
        </div>
        <div>
            <input type="radio" name="university" value="Yeah, we are on the same campus" id="Jordanstown">
            <label for="Jordanstown">Jordanstown</label>
        </div>
        <div>
            <input type="radio" name="university" value="Ah, we are not on the same site" id="Coleraine">
            <label for="Coleraine">Coleraine</label>
        </div>
        <div>
            <input type="radio" name="university" value="Ah, we are not on the same site" id="Magee">
            <label for="Magee">Magee</label>
        </div>
        <div id="log"></div>
    </form>

    <input type="button" value="Continue" id="click">
</body>
</html>

<script>
    $(function () {
        $("#click").click(function () {
            alert($("input[type=radio]:checked").val());
        })
    });
</script>

2 个答案:

答案 0 :(得分:0)

http://jsfiddle.net/VMLg9/

$("#click").click(function(){
    my_val = $("input[type=radio]:checked").val();

    if( my_val === undefined){
        alert("MY_VALIDATION_ERROR");
    } else {
        alert($("input[type=radio]:checked").val());
    }

})

答案 1 :(得分:0)

而不是$("input[type=radio]:checked").val()尝试检查长度,如下所示:

$(function () {
    $("#click").click(function(){
        if ($("input[type=radio]:checked").length == 0) {
            alert( 'Your message goes here' );
        }
    })
});

使用.val() jQuery时,会拉出所选单选按钮的值。由于没有选择单选按钮,因此您获得undefined。如果使用.length,jQuery将返回与选择器字符串匹配的元素数。在这种情况下,如果没有选中,你将获得0。