jQuery验证问题

时间:2011-04-19 13:49:43

标签: jquery validation jquery-validate

我正在尝试使用jQuery验证来处理我的单选按钮表单。 但是,我无法使其工作,验证功能根本不起作用,这是我正在使用的代码:

<!DOCTYPE html>
<html>
<head>
<meta charset="UTF-8" />
<title></title>
<script type="text/javascript" src="https://ajax.googleapis.com/ajax/libs/jquery/1.5.0/jquery.min.js"></script>
<script type="text/javascript" src="http://ajax.aspnetcdn.com/ajax/jquery.validate/1.8/jquery.validate.min.js"></script>

<script type="text/javascript">
$(document).ready(function() {
    $("#formq").validate();
});
</script>

<style type="text/css">
<!--

label.error {display: none;}

//-->
</style>
</head>

<body>

<form id="formq" name="formq" action="check.php" method="post">
    <fieldset>
        <input type="hidden" name="check_submit" value="1" />
        <label for="radio-1" tabindex="1" class="circle">Circle</label>
        <input type="radio" name="radio-button" id="radio-1" value="Circle" validate="required:true" />
        <label for="radio-2" tabindex="2" class="pentagon">Pentagon</label>
        <input type="radio" name="radio-button" id="radio-2" value="Pentagon" />
        <label for="radio-3" tabindex="3" class="triangle">Triangle</label>
        <input type="radio" name="radio-button" id="radio-3" value="Triangle" />
        <label for="radio-4" tabindex="4" class="hexagon">Hexagon</label>
        <input type="radio" name="radio-button" id="radio-4" value="Hexagon" />
        <label for="radio-5" tabindex="5" class="square">Square</label>
        <input type="radio" name="radio-button" id="radio-5" value="Square" />
        <label for="radio-6" tabindex="6" class="octagon">Octagon</label>
        <input type="radio" name="radio-button" id="radio-6" value="Octagon" />
        <label for="radio" class="error">Please select your gender</label>

        <input class="submit" type="submit" value="Submit"/>
        </fieldset>
</form>
</body>
</html>

3 个答案:

答案 0 :(得分:1)

带“ - ”的名称无效。我没有检查文档,但下面的代码工作

$.validator.setDefaults({
submitHandler: function() { alert("submitted!"); }//gives an alert messagem when submitted
});
$(document).ready(function() {

$("#formq").validate({
rules: {
radiobutton: "required"
},
messages: {//to use custom messages
radiobutton: "This is needed, buddy!"    
}
});

});

如果你使用之前的方式, $(“#formq”)。validate(),你也可以使用类:

<input type="radio" class="required" />

答案 1 :(得分:0)

您尚未为jQuery验证指定任何规则。使用CSS,jquery元数据或函数调用来完成。例如。 (未经测试):

$("#formq").validate({ rules: 
    { 
        "radio-button" : { required : true }   
    } 
});

答案 2 :(得分:0)

使用此功能,您可以测试是否已选中以及选中了哪一个:

$('.submit').bind('click',function() {
    if($("#formq input:radio").is(':checked')) {
        alert('true, value = '+$('#formq input:radio:checked').val());
    } else {
        alert('false');
    }
});