如何使用 jquery-validate 本地化

2024-05-18

有没有办法使用存储库中现有的翻译来动态(即从 JS 代码)设置/更改错误消息的语言?

非解决方案#1:加载本地化脚本(<script type="text/javascript" src="localization/messages_XX.js">) 不起作用,因为它无法在客户端更改。

非解决方案 #2:设置自定义消息setDefaults要求我想出自己的字符串,而不是重复使用现有的字符串。


Use jQuery $.extend() https://api.jquery.com/jquery.extend/随时动态替换所有消息。

$.extend($.validator.messages, {....});

Example:

var en = {
        required: "This field is required.",
        ....
    },
    ca = {
        required: "Aquest camp és obligatori.",
        ....
    },
    de = {
        required: "Dieses Feld ist ein Pflichtfeld.",
        ....
    };

$('#language').on('change', function() {
    $.extend($.validator.messages, eval($(this).val()));
});

$('#myform').validate({ ....

DEMO: http://jsfiddle.net/Lwvoo39u/ http://jsfiddle.net/Lwvoo39u/

本土化:github.com/jzaefferer/jquery-validation/tree/master/src/localization https://github.com/jzaefferer/jquery-validation/tree/master/src/localization

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

如何使用 jquery-validate 本地化 的相关文章

随机推荐