5

我对 jQuery Validation 插件有一个非常奇怪的问题,它不会验证select预先填充然后修改的。

您可以在这里查看代码:http: //jsfiddle.net/VwRJ8/1/

代码从不触发alert()以下几行:

$('#edit_loc_save').click(function() {
    var foo = $('#add_new_loc_form').valid();
    alert(foo);
});
4

3 回答 3

5

您可以在每次更改值时检查选择是否有效:

Javascript

$('#myform').validate();
$('#myselectbox').on('change', function() {
    $(this).valid();
});

演示

编辑 1

以下是导致 javascript 错误的原因,这会阻止 validate 函数正常运行:

new_loc_zip: {
    required: true,
    postalcode: true // This is not a correct setting in jquery validate
},

如果您删除该postalcode: true行,验证将正确调用。

演示

于 2012-12-09T04:21:43.627 回答
1

http://jsfiddle.net/YRAga/2/

$('#myform').validate({
    rules: {
        myselectbox: {
            required: true
        }
    }
});

$("#myselectbox").change(function() {
    $("#myform").submit();
});​
于 2012-12-09T04:22:26.933 回答
1

如果您想在更改选项时进行验证,请尝试处理选择选项的更改事件并以编程方式触发验证

尝试这样的事情

$(document).ready(function() {
        $('#myselectbox').change(function() {
              $('#myform').validate({
                            rules: {
                              myselectbox: {required: true }
                            }
                          }).form();
                       });
                    });​

看小提琴:这里

于 2012-12-09T04:23:01.510 回答