2

是否有某种类型的注册属性在Twitter Bootstrap中,我如何更改弹出消息?Rails - Twitter Bootstrap i18n - 验证

例子:验证上的形式,

而不是“请填写此场”我想要另一个翻译。这是不是连接到原来的活动记录错误信息?

回答

6

显示的消息Please fill out this field是一个HTML5验证。您可以使用setCustomValidity()http://www.html5rocks.com/en/tutorials/forms/html5forms/#toc-constraint-validation

自定义该消息,你还可以添加一些自定义文本的消息,如图http://jsfiddle.net/kaleb/nfgfP/8/

要使用的I18n在JavaScript中,你可以检出的国际化-JS宝石https://github.com/fnando/i18n-js

+0

啊,我明白了,谢谢! =) – Philip 2013-03-12 14:34:06

+0

不客气@菲利普:) – mohamagdy 2013-03-12 14:38:20

1
var elements = document.getElementsByTagName("INPUT"); 
for (var i = 0; i < elements.length; i++) { 
    elements[i].oninvalid = function(e) { 
     e.target.setCustomValidity(""); 
     e.target.checkValidity(); 
     e.target.setCustomValidity(__Msg(e.target.validationMessage)); 
    }; 
} 

// translate messages 
function __Msg(str){ 
    switch(str){ 
     case 'Please fill out this field.': return 'fill out plz.';break; 
     case 'Please enter an email address.': return 'enter email plz.';break; 

    } 
    return str; // skip not translated messages 
}