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

时间:2015-07-14 09:25:53

标签: javascript parsley.js

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

  1. 日期介于过去的a和b年之间。
  2. 如果只给出了最小日期,则应该有另一条消息
  3. 我已经通过编写一个函数并将其分配给两个验证器来解决这个问题,以便能够以不同的方式转换消息。

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

    // 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
    )
    

1 个答案:

答案 0 :(得分:0)

解决:没有可能。