1

我正在使用 LiveValidation,我只是想知道是否有人成功地将焦点设置在准备重新输入的失败输入表单上......

我查看了文档,但什么也看不到。

谢谢。

4

2 回答 2

1

这不是实时验证选项,但我最终得到了这样的解决方案:

$(document).ready(function(){
    // Focus first erroneous input
    $("form").on("submit", function(){
        var $self = $(this);

        setTimeout(function() {
            var $fields = $self.find(".LV_invalid_field");

            if ($fields.size() > 0) {
                $fields.get(0).focus();
            }
        });
    });
});
于 2015-02-03T14:30:44.277 回答
0

我已经设法做到这一点..

我刚刚更改了 addFieldClass 函数,具有以下内容:

addFieldClass: function(){

    this.removeFieldClass();
    if(!this.validationFailed){
        if(this.displayMessageWhenEmpty || this.element.value != ''){
            if(this.element.className.indexOf(this.validFieldClass) == -1) this.element.className += ' ' + this.validFieldClass;
        }
    }else{
        if(this.element.className.indexOf(this.invalidFieldClass) == -1) this.element.className += ' ' + this.invalidFieldClass;

        //Set Focus On In-Valid Elements
        var id = this.element.id;
        document.getElementById(id).focus();
    }
},
于 2014-02-12T17:07:54.297 回答