简体   繁体   English

JQuery验证对单/复数形式的支持

[英]JQuery validate support for singular/plural forms

I am using JQuery Validate plugin and am using it to show localized error messages, like shown here https://jqueryvalidation.org/jQuery.validator.format/ 我正在使用JQuery Validate插件,并使用它来显示本地化的错误消息,如此处所示https://jqueryvalidation.org/jQuery.validator.format/

Since i wanted to make it a library i localized the error messages like this 由于我想把它变成一个图书馆,所以我将错误信息本地化了。

$.extend($.validator.messages, {
   min: $.validator.format("enter at least {0} number") // in other language
});

I would like it so that it supports plural form, so that i can have: 我想要它支持复数形式,这样我就可以拥有:

1) enter at least 1 number 1)输入至少1个数字

2) enter at least 2 numbers 2)输入至少2个数字

What is the best way to do this? 做这个的最好方式是什么? I want to avoid manipulating the message outside the validate method. 我想避免在validate方法之外处理消息。

Edit: typo 编辑:错别字

Use a function where you conditionally construct the message... 在您有条件构造消息的地方使用函数...

 $('#myform').validate({
        ....
        messages: {
            foo: {
                min: function(param) {
                    var plural = (param > 1) ? "s" : "";
                    return "enter at least " + param + " number" + plural;
                }
            }, ....

DEMO: jsfiddle.net/p82ojnj6/2/ 演示: jsfiddle.net/p82ojnj6/2/


Alternatively, 或者,

$.extend($.validator.messages, {
    min: function(param) {
        var plural = (param > 1) ? "s" : "";
        return "enter at least " + param + " number" + plural;
    }
});

DEMO 2: jsfiddle.net/p82ojnj6/ 演示2: jsfiddle.net/p82ojnj6/

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM