将我自己的验证放在规则对象之外

时间:2019-05-08 16:23:11

标签: jquery jquery-validate tooltipster

除了规则对象外,我还想进行其他部分的验证。

我在哪里可以将下面的代码作为检查内容(而不是规则对象):

         $('.event_schedule_element').find('.end_date_text').each(function(index){
              if ($(this).val() == $("#end_event_date").val()) {
                 $('.event_schedule_element').find('.end_event_hour_schedule').each(function(index){
                        if ($(this).val() <= $("#end_event_hour").val()) {
                              ..............
                        }else{ 
                         // error
                         //show jquery validation in tooltipster here
                        }
                 });
              }
          });

在以下代码中: 在该代码中,我们只能检查输入是否有效。 但是,如果检查比较复杂并且需要几行代码,那么我可以在哪里放置该复杂的验证代码?

是否可以使用jquery验证和tooltipster插件检查输入值并显示错误消息?

$(document).ready(function () {

    // initialize tooltipster on text input elements
    $('#myform input[type="text"]').tooltipster({
        trigger: 'custom',
        onlyOne: false,
        position: 'right'
    });

    // initialize validate plugin on the form
    $('#myform').validate({
        errorPlacement: function (error, element) {

            var lastError = $(element).data('lastError'),
                newError = $(error).text();

            $(element).data('lastError', newError);

            if(newError !== '' && newError !== lastError){
                $(element).tooltipster('content', newError);
                $(element).tooltipster('show');
            }
        },
        success: function (label, element) {
            $(element).tooltipster('hide');
        },
        rules: {
            field1: {
                required: true,
                email: true
            },
            field2: {
                required: true,
                minlength: 5
            }
        },
        submitHandler: function (form) { // for demo
            alert('valid form');
            return false;
        }
    });

});

简而言之,将代码放在哪里(我认为不可能将其放在规则对象中):

$('.event_schedule_element').find('.end_date_text').each(function(index){
              if ($(this).val() == $("#end_event_date").val()) {
                 $('.event_schedule_element').find('.end_event_hour_schedule').each(function(index){
                        if ($(this).val() <= $("#end_event_hour").val()) {
                              ..............
                        }else{ 
                         // error
                         //show jquery validation in tooltipster here
                        }
                 });
              }
          });

我正在使用以下版本的最新版本: https://iamceege.github.io/tooltipster/https://jqueryvalidation.org/validate/

0 个答案:

没有答案