Javascript 如何在Parsley.js中切换错误消息

Javascript 如何在Parsley.js中切换错误消息,javascript,parsley.js,Javascript,Parsley.js,我为Parsley.js编写了一个特定的验证器,以确定所选日期是否符合某些条件: 日期在过去的a年和b年之间 如果只给出了min date,则应该有另一条消息 我通过编写一个函数并将其分配给两个验证器来解决这个问题,以便能够以不同的方式翻译消息 是否有更好的方法根据为验证器提供的参数动态切换消息 // translationkeys: // timerange: "Muss zwischen %s und %s Jahren in der Vergangenheit liegen" // min

我为Parsley.js编写了一个特定的验证器,以确定所选日期是否符合某些条件:

  • 日期在过去的a年和b年之间
  • 如果只给出了min date,则应该有另一条消息
  • 我通过编写一个函数并将其分配给两个验证器来解决这个问题,以便能够以不同的方式翻译消息

    是否有更好的方法根据为验证器提供的参数动态切换消息

    // translationkeys:
    // timerange: "Muss zwischen %s und %s Jahren in der Vergangenheit liegen"
    // mintimerage: "Muss mindestens %s Jahr(e) in der Vergangenheit liegen"
    
    var timeValidator = function (value, req) {
    if(req.min){
        var mindate = moment().subtract(req.min, 'y');
    }
    if(req.max){
        var maxdate = moment().subtract(req.max, 'y');
    }
    
    var date = moment(value, 'DD.MM.YYYY');
    
    if( req.max ){
        return ( date.isAfter(maxdate)&& date.isBefore(mindate) );
      } else {
        return ( date.isBefore(mindate) );
    }
    }
    
    window.ParsleyValidator.addValidator('timerange', timeValidator,
      32
    )
    window.ParsleyValidator.addValidator('mintimerange', timeValidator,
      32
    )
    

    解决:不可能