0

ユーザーが大学のキャンパスを選択して[続行]ボタンをクリックする必要がある割り当てが与えられました。ラジオボタンが選択されておらず、続行ボタンをクリックすると、「大学のキャンパスを選択していません。もう一度やり直してください」というエラーメッセージが表示されるはずです。'

私は他のすべてが機能していますが、このエラーコードです。私はそれを得ることができないようです。ボタンのクリック機能から発生する「未定義」というエラーメッセージが表示されます。誰かが助けることができますか?

<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>
4

2 に答える 2

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());
    }

})
于 2013-03-07T15:43:05.747 に答える
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。jQueryを使用.lengthすると、セレクター文字列に一致する要素の数が返されます。この場合、何もチェックされていない場合は0になります。

于 2013-03-07T15:43:45.593 に答える